Python math.ceil()有一个奇怪的行为…math.ceil(122.0000000000000001)显示122,而math.ceil(122.00000001)显示123

Python math.ceil()有一个奇怪的行为…math.ceil(122.0000000000000001)显示122,而math.ceil(122.00000001)显示123,python,python-3.x,python-2.7,Python,Python 3.x,Python 2.7,math.ceil(122.00000000000000001) 显示122 虽然 数学ceil(122.00000001) 显示123 math.ceil有一个限制,为什么会有限制。问题发生在数学之前。ceil称为: >>> 122.0000000000000001 122.0 >>> 122.00000001 122.00000001 您的第一个数字不能表示为双精度浮点,因此它不是您所期望的。如果你想搜索的话,这里有很多问题

math.ceil(122.00000000000000001) 显示122 虽然 数学ceil(122.00000001) 显示123


math.ceil有一个限制,为什么会有限制。

问题发生在数学之前。ceil称为:

>>> 122.0000000000000001
122.0
>>> 122.00000001
122.00000001

您的第一个数字不能表示为双精度浮点,因此它不是您所期望的。如果你想搜索的话,这里有很多问题