我是Python的初学者。3) 并希望将单词替换到相应的词典中关键字:value if存在。例如,我有一个逗号分隔的列表
unfiltered = ['Cat,Dog,Cow','','Horse,Whale','Fish,Giant Elephant']
我想把“Whale”改成“Big Whale”,把“Fish”改成“水母”,就像这本字典:
word_to_change = {'Whale': 'Big Whale', 'Fish': 'Jellyfish'}
要得到这样的结果:
['Cat,Dog,Cow','','Horse,Big Whale','Jellyfish,Giant Elephant']
我可以组合“未筛选”列表中的所有元素,并使用字典值进行筛选:
unfiltered_combine = ['Cat','Dog','Cow','','Horse','Whale','Fish','Giant Elephant']
[x if x not in word_to_change else word_to_change[x] for x in lists]
筛选组合词时的结果:
['Cat', 'Dog', 'Cow', '', 'Horse', 'Big Whale', 'Jellyfish', 'Giant Elephant']
但是,我希望保持列表“未过滤”,而不合并其元素。有没有办法将“未过滤”列表过滤到“单词到更改”字典关键:价值?如果你能给我一些建议,我将不胜感激。你知道吗
输出:
编辑:仅当新值不在初始列表中时才能正常工作。你知道吗
您可以告诉我们以下理解:
这利用了^{} 方法。您将^{} 列表元素、应用转换和^{} 标记重新组合在一起。你知道吗
相关问题 更多 >
编程相关推荐