我想要显示:
49 as 49.00
and:
54.9和54.90
无论小数点的长度或是否有任何小数点,我想显示一个小数点后2位的小数,我想以一种有效的方式做到这一点。目的是展示货币价值。
例如,4898489.00
有关内置浮点类型的类似问题,请参阅将浮点数限制为两个小数点。
我想要显示:
49 as 49.00
and:
54.9和54.90
无论小数点的长度或是否有任何小数点,我想显示一个小数点后2位的小数,我想以一种有效的方式做到这一点。目的是展示货币价值。
例如,4898489.00
有关内置浮点类型的类似问题,请参阅将浮点数限制为两个小数点。
当前回答
这与你可能已经看到的解决方案是一样的,但是这样做会更清楚:
>>> num = 3.141592654
>>> print(f“Number: {num:.2f}”)
其他回答
Python文档中的字符串格式化操作部分包含了您正在寻找的答案。简而言之:
"%0.2f" % (num,)
一些例子:
>>> "%0.2f" % 10
'10.00'
>>> "%0.2f" % 1000
'1000.00'
>>> "%0.2f" % 10.1
'10.10'
>>> "%0.2f" % 10.120
'10.12'
>>> "%0.2f" % 10.126
'10.13'
>>> print "{:.2f}".format(1.123456)
1.12
你可以把2f中的2改成你想显示的任何小数点。
编辑:
在Python3.6中,它转换为:
>>> print(f"{1.1234:.2f}")
1.12
如果你有多个参数,你可以使用
print('some string {0:.2f} & {1:.2f}'.format(1.1234,2.345))
>>> some string 1.12 & 2.35
.format是一种可读性更好的处理变量格式化的方式:
'{:.{prec}f}'.format(26.034, prec=2)
在python 3中,这样做的一种方法是
'{:.2f}'.format(number)