将数字格式化为字符串

hek*_*ran 3 python string format integer

如何将数字格式化为字符串,以便它前面需要多个空格?我希望较短的数字5在它前面有足够的空间,以便空格加上5与52500具有相同的长度.下面的程序有效,但有没有内置的方法来做到这一点?

a = str(52500)
b = str(5)
lengthDiff = len(a) - len(b)
formatted = '%s/%s' % (' '*lengthDiff + b, a)
# formatted looks like:'     5/52500'
Run Code Online (Sandbox Code Playgroud)

gim*_*mel 8

格式运算符:

>>> "%10d" % 5
'         5'
>>> 
Run Code Online (Sandbox Code Playgroud)

使用*spec,字段长度可以是一个参数:

>>> "%*d" % (10,5)
'         5'
>>> 
Run Code Online (Sandbox Code Playgroud)