2015-09-14 131 views

回答

0

无论您如何编写Python,浮点数的精度都是大约16位数。 1.01.0000的数字相同。差异不在数字中,而是在显示涉及的数字到字符串转换中。因此,按照您的说法,唯一可以做到的就是根据您的条款将其转换为字符串:"{:.4f}".format(1.0)

1

好像你正在寻找decimal包:

>>> from decimal import * 
>>> getcontext().prec = 6 
>>> Decimal(1)/Decimal(7) 
Decimal('0.142857') 
>>> getcontext().prec = 28 
>>> Decimal(1)/Decimal(7) 
Decimal('0.1428571428571428571428571429')