Thu*_* Ra 0 python string whitespace python-2.7
我想删除列表字符串的空格如下
original = ['16', '0000D1AE18', '1', '1', '1', 'S O S .jpg', '0']
Run Code Online (Sandbox Code Playgroud)
删除空格后
['16', '0000D1AE18', '1', '1', '1', 'SOS.jpg', '0']
Run Code Online (Sandbox Code Playgroud)
str.translate()在列表理解中使用每个元素:
[v.translate(None, ' ') for v in original]
Run Code Online (Sandbox Code Playgroud)
这None意味着不要将字符替换为其他字符,并且' '意味着完全删除空格.这会生成一个新列表来替换原始列表.
以上只删除空格.要删除所有空格(换行符,制表符,供稿等),只需展开应删除的字符
[v.translate(None, ' \t\r\n\f\x0a') for v in original]
Run Code Online (Sandbox Code Playgroud)
str.translate() 是从文本中删除字符的最快选项.
演示:
>>> original = ['16', '0000D1AE18', '1', '1', '1', 'S O S .jpg', '0']
>>> [v.translate(None, ' \t\r\n\f\x0a') for v in original]
['16', '0000D1AE18', '1', '1', '1', 'SOS.jpg', '0']
Run Code Online (Sandbox Code Playgroud)