可能重复: 浮点限制
你好啊,
也许这有一个简单的答案。我在玩Python解释器。
>>> 1
1
>>> 1.1
1.1000000000000001
>>> 1.2
1.2为什么1.1被解释为1.1000000000000001
发布于 2011-04-22 09:57:32
来自浮点指南:
,为什么我的数字,比如0.1 + 0.2,加在一起可以达到一个很好的0.3,而我却得到了一个奇怪的结果,比如0.30000000000000004? 因为在内部,计算机使用的格式(二进制浮点)根本不能准确地表示0.1、0.2或0.3这样的数字。 当代码被编译或解释时,您的“0.1”已经被舍入到该格式的最接近的数字,这甚至在计算发生之前就会导致一个小的舍入错误。
发布于 2011-04-22 09:57:07
这是由于内部存储数字的方式。格式是在754-2008规范中指定的。
在单精度浮标这里上可以找到更多的信息。
发布于 2011-04-22 09:59:34
您可以查看这里的浮点算术问题和限制。
无论如何,在python 3中,您有:
>>> 1
1
>>> 1.1
1.1
>>> 1.2
1.2
>>> https://stackoverflow.com/questions/5754284
复制相似问题