python:在module里float的精度变小了

2024-11-03 00:34:18
推荐回答(2个)
回答1:

print的精度有限,需要用py的格式语槐陆铅法
>>> i=1.12345678901234567890
>>> i
1.1234567890123457
>>> '{:0.30f}'.format(i)
'1.123456789012345691247674039914'

print('{:0.30f}'.format(i)) #打印30位小数。

py的浮点是双精度悉或的,有效数字大概只有14个,最好不超过10吧。
用于中间值好,记录准确数字不要用铅好浮点,用decimal类。

回答2:

print('{:0.30f}'.format(i))