我需要找到其值在有序字典中最低的键,但只有当它在 my_list 中的位置为 True 时。
from collections import OrderedDict
my_list = [True,False,False,True,True,False,False,False,]
my_lookup = OrderedDict([('a', 2), ('b', 9), ('c', 4), ('d', 7),
('e', 3), ('f', 0), ('g', -5), ('h', 9)])
我知道如何使用 for 循环来做到这一点
mins=[]
i=0
for item in my_lookup.items():
if my_list[i]:
mins.append(item)
i+=1
print min(mins,key=lambda x:x[1])[0]
印刷
a
因为 a 是最低的,在 my_list 中也是 True。
这行得通,但它很长,我想知道如何用理解或一行来做到这一点?