【发布时间】:2015-03-04 02:06:15
【问题描述】:
我已经查看了几十个类似的问题 - 我很高兴获得另一个答案的链接 - 但我想在 python 3.3 中对浮点数进行零填充
n = 2.02
print( "{?????}".format(n))
# desired output:
002.0200
浮点数的精度很简单,但我也无法获得零填充。什么进入???的
【问题讨论】:
标签: python string python-3.x string.format
我已经查看了几十个类似的问题 - 我很高兴获得另一个答案的链接 - 但我想在 python 3.3 中对浮点数进行零填充
n = 2.02
print( "{?????}".format(n))
# desired output:
002.0200
浮点数的精度很简单,但我也无法获得零填充。什么进入???的
【问题讨论】:
标签: python string python-3.x string.format
你可以像这样使用格式说明符
>>> "{:0>8.4f}".format(2.02)
'002.0200'
>>> print("{:0>8.4f}".format(2.02))
002.0200
>>>
这里,8 代表总宽度,.4 代表精度。而0> 表示字符串必须右对齐,并从左边用0 填充。
【讨论】:
您可以对字符串使用新旧格式化方法::
In [9]: "%08.4f" %(2.02)
Out[9]: '002.0200'
In [10]: "{:08.4f}".format(2.02)
Out[10]: '002.0200'
【讨论】:
"{:08.4f}".format(2.02) 因为我试图填充到两个地方时,我有一个头疼的时刻。完全忽略了我必须考虑预期输出的整个宽度的事实。感谢您的帮助。