Python 为什么浮点数(在shell中键入时)有一个附加数字(零)

Python 为什么浮点数(在shell中键入时)有一个附加数字(零),python,python-2.7,Python,Python 2.7,我是python新手,我在python2.7 shell中输入浮点数时发现: >>> 9.9 9.9000000000000004 >>> 9.9==_ True >>> 9.9==9.90000004 False >>> 7.7 7.7000000000000002 >>> 7.7==_ True >>> 7.7==7.700000002 False 我的问题是,为什么9.9变成了9.

我是python新手,我在python2.7 shell中输入浮点数时发现:

>>> 9.9
9.9000000000000004
>>> 9.9==_
True
>>> 9.9==9.90000004
False
>>> 7.7
7.7000000000000002
>>> 7.7==_
True
>>> 7.7==7.700000002
False
我的问题是,为什么9.9变成了9.90000000000004?它是默认的吗


请让我知道这是否是重复的。谢谢。

一般来说,这是由于计算机的二进制特性造成的。这不是Python特有的问题。小数部分不能总是用二进制数精确表示。阅读并检查示例和详细说明