如何从python 3的列表项中删除多个空格或\ t?

我想从我的列表中删除额外的balnks和字符,但我无法完成,虽然我试过split(),strip()和下面的代码。我该怎么做?如何从python 3的列表项中删除多个空格或 t?

我试过的是;

import re 

movie_list=[" The Room"," Boyhood","\t\tThe Help"]

for i in movie_list:

i=re.sub('[ \t]+' , ' ',i)

print(movie_list)

回答:

如果你想要去除的开头和结尾的空格:

[m.strip() for m in movie_list] 

它提供:

['The Room', 'Boyhood', 'The Help'] 

如果你想删除重复的空格:

import re 

[re.sub(r'[ \t]+', '', m) for m in movie_list]

你也可以结合两者:

import re 

[re.sub(r'[ \t]+', '', m.strip()) for m in movie_list]

在你的榜样,要注意一个事实,即i=re.sub('[ \t]+' , ' ',i)重新定义变量i修改您的列表。要实际进行更改列表,您可以

for index, value in enumerate(movie_list): 

movie_list[index] = some_function(value)

或重新定义movie_list

movie_list = [some_function(m) for m in movie_list] 

以上是 如何从python 3的列表项中删除多个空格或\ t? 的全部内容, 来源链接: utcz.com/qa/266230.html

回到顶部