我有一个标签列表:
list1 = ['tag1', tag2', 'tag3', 'tag4', 'tag5']
和包含替换组合的字典,如:
replace_dict = {'tag2':'tag1', 'tag4':'tag3'}
我需要用replace_dict中的值替换列表1中的每个项目(replace_dict中的键),因此list1将变为:
['tag1', 'tag1', 'tag3', 'tag3', 'tag5']
答案 0 :(得分:3)
这个怎么样:
print [replace_dict.get(i,i) for i in list1 ]
输出:
['tag1', 'tag1', 'tag3', 'tag3', 'tag5']
答案 1 :(得分:2)
请尝试以下代码:
#!/usr/bin/env python
def replace(lst, dct):
return map(lambda l: dct.get(l, l), lst)
if __name__ == '__main__':
list1 = ['tag1', 'tag2', 'tag3', 'tag4', 'tag5']
replace_dict = {'tag2':'tag1', 'tag4':'tag3'}
print(replace(list1, replace_dict))
答案 2 :(得分:-1)
另一种方法,
[ replace_dict[v] if v in replace_dict.keys() else v for v in l ]