저는 webapp2로 GAE 프로젝트를 작성하고 있습니다.
유니 코드 문자열을 10 진수 값으로 변환해야합니다.유니 코드 문자열을 10 진수로 변환 - 파이썬 2.7
나는이 같은 클라이언트 측에서 위도가 나타납니다 실패 변환 u'50.41688620000001'
그러나 어떤 시도를 : 디버거에서
lat = self.request.get('lat')
내가 lat
받은 그처럼되는 것을 볼 수 있습니다. 나는 그런 식으로 변환 해요 :
edit = Decimal(lat)
오류는 다음과 같다 InvalidOperation은 : 잘못된 문자를 10 진수 : 내가 대신 명시 적으로
lat = u'50.41688620000001'
을 쓸 때
:
하지만를 ''
lat = self.request.get('lat')
변환은 Decimal과 float 모두에서 잘 작동합니다. 무엇이 문제 일 수 있습니까?
편집 : 나는 콘솔에 두 줄
lat = self.request.get('lat')
print lat
이 인쇄를 쓸 때 : 빈 하나를 (그러나 확실히 아직 정확히 왜하지 제안이) 두 번째는 실제로 50.41688620000001
입니다.
따라서 Decimal(lat)
이 처리 될 때 먼저 빈 값이 사용됩니다.
는 EDIT2 : 나는 앉아 잠시 후 실제 문제를 깨달았다. 2 개의 jquery ajax 함수에서 값을 변환하는이 서버 함수를 호출했습니다. 하나는 어을 서버에 보내고 다른 하나는 다른 작업을 수행하지 않았습니다. 함수가 두 번 호출 될 때 self.request.get('lat')
에는 값이 두 번 할당되었습니다. 하나는 비어 있고 다른 하나는 예상대로 - 유니 코드 값입니다. 변환 및 빈 값 부딪히는 그래서 동안, 하늘의 캐릭터 라인의 오류가 arised : InvalidOperation : 잘못된 문자를 10 진수 :
왜 'float (lat)'가되지 않습니까? –
float도 시도했지만 오류가 발생합니다. * ValueError : 문자열을 부동으로 변환 할 수 없습니다. * – Elena
오류가 발생하는 경우 이것이 아닙니다. 변환하려는 문자열. 실제 문자열을 게시하십시오. –