Python填充不同长度的字符串

时间:2017-12-13 23:52:30

标签: python string formatting padding

所以我有一个问题,我知道可以通过字符串格式化解决但我真的不知道从哪里开始。 我想要做的是创建一个填充的列表,以便在逗号之前有n个字符,如下面的列表所示。

 1148,
   39,
  365,
    6,
56524,

干杯谢谢你的帮助:)

3 个答案:

答案 0 :(得分:2)

最直接的方法是使用str.rjust()功能。例如:

your_list = [1148, 39, 365, 6, 56524]

for element in your_list:
    print(str(element).rjust(5))

你得到:

 1148
   39
  365
    6
56524

还有str.center()str.ljust()用于其他方向的字符串对齐。

但您也可以通过格式化来实现:

your_list = [1148, 39, 365, 6, 56524]

for element in your_list:
    print("{:>5}".format(element))

答案 1 :(得分:0)

假设你知道你能做什么: '{:>n}'.format(number)

因此,如果你有一个整数列表,并希望按照上面的格式进行格式化,你可以这样做:

numbers = [1148, 39, 365, 6, 56524]
result = '\n'.join(('{:>5},'.format(x) for x in numbers))

答案 2 :(得分:0)

请参阅Format Specification Mini-Language

您正在寻找"{:5d},".format(i)之类的内容,其中i是要打印的宽度为5的整数。

对于变量width"{:{}d},".format(i, width)