问题:如何在Python中将字符串转换为双精度?
我想知道如何将包含数字的字符串转换为双精度型。
回答 0
>>> x = "2342.34"
>>> float(x)
2342.3400000000001
妳去 使用float(其行为类似于C,C ++或Java double,并且具有相同的精度)。
回答 1
十进制运算符可能更符合您的要求:
>>> from decimal import Decimal
>>> x = "234243.434"
>>> print Decimal(x)
234243.434
回答 2
请注意,如果您的字符串数字包含的有效位数超过15个,float(s)
则将其取整。在这种情况下,最好使用Decimal
这是一个解释和一些代码示例:https : //docs.python.org/3/library/sys.html#sys.float_info