如何使用format属性获取一个整数,以便在python 3.2中将0填充到固定宽度? 例如:
a = 1
print('{0:3}'.format(a)}
给出'1'代替我想要的'001'。在python 2.x中,我知道这可以使用
完成print "%03d" % number.
我检查了python 3字符串文档但是无法得到它。
http://docs.python.org/release/3.2/library/string.html#format-specification-mini-language
感谢。
答案 0 :(得分:44)
使用0
:
>>> '{0:03}'.format(1)
'001'
另外,在最新版本的Python中你不需要放置标记(不确定哪个,但至少是2.7和3.1):
>>> '{:03}'.format(1)
'001'
答案 1 :(得分:0)
有内置的字符串方法.zfill用于填充0秒:
>>> str(42).zfill(5)
'00042'
>>> str(42).zfill(2)
'42'
答案 2 :(得分:0)
更好:
number=12
print(f'number is equal to {number:03d}')