from operator import itemgetter
my_dict = {'ABC':'Apple','DEF':'Mango','GHI':'Pear','JKL':'Orange','MNO':'Plum'}
lst_x = ['DEF','GHI']
# in case, if there's a chance, that lst_x would get some of the keys, that are not in my_dict - add the below line:
# lst_x=set(lst_x).intersection(set(my_dict.keys()))
res=itemgetter(*lst_x)(my_dict)
my_dict = {'ABC':'Apple','DEF':'Mango','GHI':'Pear','JKL':'Orange','MNO':'Plum'}
lst_x = ['DEF','GHI']
out = [value for element in lst_x for key, value in my_dict.items() if element == key]
print(out)
您可以使用
operator.itemgetter
一次检索多个键:产出:
一种方法是使用
list comprehension
来构造请求的列表。本质上,我们在外循环中遍历
list
,在内循环中遍历dictionary
,然后将list
值与dictionary
中的key
值进行比较,如果有匹配项,则将关联的key
值保存在新的输出列表中下面的代码段如上所述工作:
运行时,它会打印:
您可以使用一个简单的循环,询问是否有具有相同值的键并打印它,例如:
相关问题 更多 >
编程相关推荐