round() 函数的文档指出您将一个数字传递给它,并将小数点后的位置四舍五入。因此它 应该 这样做:
n = 5.59
round(n, 1) # 5.6
但是,实际上,古老的浮点怪癖悄悄出现,你会得到:
5.5999999999999996
出于 UI 的目的,我需要显示 5.6
。我在 Internet 上四处寻找,发现一些 文档 表明这取决于我对 Python 的实现。不幸的是,这发生在我的 Windows 开发机器和我尝试过的每台 Linux 服务器上。 另见此处。
除了创建我自己的圆形库之外,还有什么办法可以解决这个问题吗?
原文由 swilliams 发布,翻译遵循 CC BY-SA 4.0 许可协议
我无法帮助它的存储方式,但至少格式正确: