将float格式化为打印函数中的两位小数

时间:2018-06-07 05:53:25

标签: python python-3.x printing

我有以下代码:

print ("Cost: %f per %s" % (mrate[choice], munit[choice]))

输出:

Cost: 25.770000 per 10gm tube

如何在打印时将其舍入到两位小数,以便输出中得到25.77?

4 个答案:

答案 0 :(得分:2)

>>> print ("Cost: %f" % 25.77)
Cost: 25.770000
>>> print ("Cost: %.2f" % 25.77)
Cost: 25.77

不确定在PyDoc中何处找到它,但至少可以找到相同的宽度精度规则here

答案 1 :(得分:1)

如果您使用%.2f,您将获得2个小数位,以便浮动:

测试代码:

value = 25.7700000001
print("%f %.2f" % (value, value))

结果:

25.770000 25.77

答案 2 :(得分:1)

使用round函数来限制小数位。

打印("费用:%。2f /%s"%(round(mrate [choice],2),munit [choice]))

或替换"%f"用"%。2f"

答案 3 :(得分:1)

您需要在print函数中使用格式规范,如下所示:

value = 25.7700000001
print("%.2f" % (value))