我需要在不四舍五入的情况下截断百分之位的小数。 我正在使用该方法:
y = 78.459
x = int(y * 100) / 100
返回为78.45
。正如它应该的那样。
但是,如果我这样做
y = 5.10
x = int(y * 100) / 100
它返回为 5.09
,而它应该是 5.10
我知道这是一个表示错误,由于 Python 中的浮点不准确,但我不知道如何修复它。 如果有人可以帮助我弄清楚如何修复表示错误,或者找到一种更好的方法来截断百分之一的位置,我将非常感激。 谢谢
最佳答案
为此使用decimal
模块:
>>> from decimal import Decimal as d
>>> y = d('5.10')
>>> x = int(y * 100) / 100
>>> x
5.1
>>>
关于python - 如何解决Python中 float 的表示错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52377617/