首页 > 解决方案 > round 命令无法获得所需的结果

问题描述

在下面的代码中,当我在 for 循环中打印 h 值时,它会打印 1.2, 1.4, 1.6 的值。但我想要 1.20, 1.40, 1.60 。我尝试使用圆形功能,但结果仍然相同。如何在 for 循环中获得精确值 1.20、1.40、1.60?

low =[1.20, 1.40, 1.60, 1.80, 2.00, 2.20, 2.40]
for k in range(len(low)):
    h = round(low[k],2)
    print(h)

标签: python

解决方案


尝试这个:

print("{:.2f}".format(h))

这不是舍入问题,而是输出格式问题。换句话说,数字是正确四舍五入的,只是在打印尾随零时没有打印出来,所以你需要一些格式来强制打印零。


推荐阅读