2015-07-03 144 views
3

的名單不同的字符數爲字符串比方說,我有一個字符串列表:追加在字符串

strs = ["aa", "bbb", "c", "dddd"] 

我要追加空格每個字符串的結尾,使每串長度爲4個字符。也就是說,我想最終產品看起來像這樣:

strs_final = ["aa ", "bbb ", "c ", "dddd"] 

我覺得列表理解是要走的路,但我不知道到底如何去這樣做。我知道如何,比如,挑選出了一些長度爲3的字符串,並添加一個空格對他們說:

[i+" " for i in strs if len(i) == 3] 

但我不知道如何添加的空間變化的號碼,不同字符串

的長度

回答

7

另一種解決方案是使用str.ljust

[i.ljust(4) for i in strs] 
2

您可以使用python的format。對格式說明的一般形式是:

format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type] 

所以,如果你提供的width將與空間被填充:

>>> list(map('{:4}'.format, strs)) 
['aa ', 'bbb ', 'c ', 'dddd'] 
1
>>> [i+" "*(4-len(i)) for i in strs] 
['aa ', 'bbb ', 'c ', 'dddd'] 

關鍵是"x"*4給你"xxxx"