我们说我有一个字符串列表:
strs = ["aa", "bbb", "c", "dddd"]
我想在每个字符串的末尾添加空格,以便每个字符串长度为4个字符。也就是说,我希望最终产品看起来像这样:
strs_final = ["aa ", "bbb ", "c ", "dddd"]
我认为列表理解是要走的路,但我不确定如何去做这件事。我知道如何挑选长度为3的字符串并为它们添加一个空格:
[i+" " for i in strs if len(i) == 3]
但我不知道如何为不同长度的字符串添加不同数量的空格
答案 0 :(得分:7)
另一种解决方案是使用str.ljust
[i.ljust(4) for i in strs]
答案 1 :(得分:2)
你可以使用python的format
。格式说明符的一般形式是:
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type]
因此,如果您提供width
,则会填充空格:
>>> list(map('{:4}'.format, strs))
['aa ', 'bbb ', 'c ', 'dddd']
答案 2 :(得分:1)
>>> [i+" "*(4-len(i)) for i in strs]
['aa ', 'bbb ', 'c ', 'dddd']
关键点为"x"*4
,为您提供"xxxx"