如何在 5 上四舍五入

How to round a float up on 5

所以我很惊讶我没有找到任何与此相关的信息。

我有一个 python 脚本,它正在测试 C++ 程序。它需要以与 std::setprecision 相同的方式格式化浮点数。这是一个像 1.265 这样的浮点数应该四舍五入到 1.27 (2 dp)。

现在我有以下代码: "{:.2f}".format(myFloat)

问题是像 1.265 这样的数字四舍五入为 1.26,我的测试失败了。 setprecision 将 1.265 舍入为 1.27。 解决此问题的最佳方法是什么?

您可以使用双舍入来克服二进制算法无法精确表示十进制值的问题。

round(round(1.265, 3) + 0.0005, 2)