파이썬에서 'nn.nnnnn'형식의 문자열이 있습니다. 정수로 변환하고 싶습니다.문자열을 파이썬에서 십진수로 정수로 변환
직접 변환이 실패
이>>> s = '23.45678'
>>> i = int(s)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '23.45678'
내가 사용하여 진수로 변환 할 수 있습니다 : '.'
>>> from decimal import *
>>> d = Decimal(s)
>>> print d
23.45678
나는 또한에 분할 수, 다음 추가 한 후, 0에서 소수점을 빼기 그 번호로 ... 멍청이.
하지만 불필요한 유형 변환이나 기동없이 int로 사용하는 것을 선호합니다.
매트, 23.45678은 정수가 아닙니다. 파이썬에서 문자열을 정수로 변환하려면 정수로 지정해야합니다. 논쟁은 "옳은"일이 무엇인지에 대해 어느 쪽이든 할 수 있으며, 결국에는 누군가가 불행해질 것입니다. – Christopher