我有兩個需要循環(huán)遍歷的列表。一個是我想從另一個列表(REPLACE_LIST)中刪除的值列表,另一個列表只是數(shù)據(jù)。REPLACE_LIST = ['\'','[','[','\\','\"',',','〈','(',')','?','?','!','…','?','!','〉','?','~','?','《','》','?','?','',']','\\n']t=['?(???????????)\n', '〈頃は 昔々?\n'] 我嘗試過類似的事情for char in REPLACE_LIST: for i in t: if char in i: i = i.replace(char, ' ')#I want to get rid of the characters但這是行不通的。我怎樣才能更好地做到這一點?為了澄清一下,我希望“t”看起來像:['???????????', '頃は 昔々']
1 回答

互換的青春
TA貢獻1797條經(jīng)驗 獲得超6個贊
您需要將字符串設(shè)置回列表中,因此您最好迭代索引并使用values[i],也不需要檢查包含,您可以通過刪除它來簡化,因為replace如果模式不存在,則不會執(zhí)行任何操作
values = ['?(???????????)\n', '〈頃は 昔々?\n']
for i in range(len(values)):
for char in REPLACE_LIST:
values[i] = values[i].replace(char, '')
您還可以通過創(chuàng)建一個對所有元素re執(zhí)行操作的模式來使用OR
import re
pattern = re.compile("|".join(REPLACE_LIST))
for i in range(len(values)):
values[i] = pattern.sub("", values[i])
添加回答
舉報
0/150
提交
取消