为什么python 12.76 / 106是0.1200000000001而不是0.12?

时间:2017-10-12 05:51:03

标签: python-3.x

我用pythonista划分12.76,结果是0.12000000001而不是0.12,为什么?

2 个答案:

答案 0 :(得分:2)

您可能需要查看http://floating-point-gui.de。你得到的答案并没有错,一切都取决于你想要多少精度。

答案 1 :(得分:1)

因为计算机以二进制方式进行计算。但他们也有限的位来代表数字。基地2可能有溢出,因此机器不得不向上舍入1位或其他东西。然后,当它转换为十进制时,你得到.00000000000001