Answers:
for x in numbers:
print "{:10.4f}".format(x)
版画
23.2300
0.1233
1.0000
4.2230
9887.2000
花括号内的格式说明符遵循Python格式字符串语法。具体来说,在这种情况下,它由以下部分组成:
format()
” -在这种情况下,x
作为唯一的参数。10.4f
冒号之后的部分是格式规范。f
表示定点表示法。10
是该领域的总宽度被印刷,用空格lefted-填充。4
是小数点后的位数。10.4
表示宽度为10个字符,精度为4个小数位。
10
是最小字段宽度,即打印字符串的最小长度。默认情况下,数字会右对齐并用空格填充- 有关更多详细信息,请参阅文档。
("%0.4f" % x).rjust(10)
"%10.4f" % x
。在Python 2.6中,您也可以使用"{0:10.4f}".format(x)
。
在python3中,以下工作原理:
>>> v=10.4
>>> print('% 6.2f' % v)
10.40
>>> print('% 12.1f' % v)
10.4
>>> print('%012.1f' % v)
0000000010.4
%
格式化是最古老的格式化方法。由于多种原因,使用str.format
或f-strings
优于%
。在此之前str.format
,人们只是出于某种原因而已f-strings
修复了该漏洞。格式小型语言文档,从文档str.format例子和在文档F-字符串文字例子
您也可以将零填充为零。例如,如果您number
要有9个字符的长度,请用零左填充,请使用:
print('{:09.3f}'.format(number))
因此,如果为number = 4.656
,则输出为:00004.656
对于您的示例,输出将如下所示:
numbers = [23.2300, 0.1233, 1.0000, 4.2230, 9887.2000]
for x in numbers:
print('{:010.4f}'.format(x))
印刷品:
00023.2300
00000.1233
00001.0000
00004.2230
09887.2000
一个可能有用的示例是当您要按字母顺序正确列出文件名时。我注意到在某些linux系统中,数字是:1,10,11,.. 2,20,21,...
因此,如果要在文件名中强制执行必要的数字顺序,则需要在键盘上填充适当数量的零。