我想用 4 位数字打印输出。
例如,使用16/2
,输出应该是0008
。
我该怎么做?
>>> '{:04d}'.format(16/2)
'0008'
字符串格式04d
意味着:
0 -- fill spaces with 0
4 -- width should be 4 (though can be greater if the input requires it)
d -- format the input as an integer
有关格式字符串语法的更多信息,请参阅此页面。
str.zfill()
更适合这个:
>>> str(16/2).zfill(4)
'0008'
str.zfill(width)
返回长度为width的字符串中用零填充的数字字符串。正确处理符号前缀。如果 width 小于或等于 ,则返回原始字符串
len(s)
。
为了完整起见,旧样式:
In [1]: '%04d' % (16 / 2)
Out[1]: '0008'
“04d”与@unutbu 的答案相同。
您可以使用str.rjust
:
>>> str(16/2).rjust(4, '0')
'0008'