我有一个字符串列表,我想替换最后两个字符串中的“
"racist superman"|"rudy"|"mancuso"|"king"|"bach"|"racist"|"superman"|"love"|"rudy mancuso poo bear black white official music video"|"iphone x by pineapple"|"lelepons"|"hannahstocking"|"rudymancuso"|"inanna"|"anwar"|"sarkis"|"shots"|"shotsstudios"|"alesso"|"anitta"|"brazil"|"Getting My Driver's License | Lele Pons"
我的代码看起来像这样,但是它确实替换了其他字符串中的“”并删除了“ |”。
注意:该函数的输入tags_str由文件接收
def extract_tags(tags_str):
b = [n.strip('""').strip().replace('""', '') for n in tags_str.split("|")]
return b
['racist superman', 'rudy', 'mancuso', 'king', 'bach', 'racist', 'superman', 'love', 'rudy mancuso poo bear black white official music video', 'iphone x by pineapple', 'lelepons', 'hannahstocking', 'rudymancuso', 'inanna', 'anwar', 'sarkis', 'shots', 'shotsstudios', 'alesso', 'anitta', 'brazil', "Getting My Driver's License", 'Lele Pons']
如您所见,第一个strip去除了“”,第二个strip()去除了空格。但是"Getting My Driver's License"
仍然有双引号,并且我希望使用replace('""', '')
来代替双引号,但事实并非如此。
首选输出为:
['racist superman', 'rudy', 'mancuso', 'king', 'bach', 'racist', 'superman', 'love', 'rudy mancuso poo bear black white official music video', 'iphone x by pineapple', 'lelepons', 'hannahstocking', 'rudymancuso', 'inanna', 'anwar', 'sarkis', 'shots', 'shotsstudios', 'alesso', 'anitta', 'brazil', 'Getting My Driver's License', 'Lele Pons']
编辑:
感谢您的回答/评论,此问题已由 b = [n.strip('""').strip().replace("'", '') for n in tags_str.split("|")]
修复
因为它是单引号而不是双引号。
答案 0 :(得分:1)
您可以使用“´”代替单引号(撇号('))。 这样可以避免整个问题。