我需要找到其值在有序字典中最低的键,但只有当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)])
Run Code Online (Sandbox Code Playgroud)
我知道怎么用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]
Run Code Online (Sandbox Code Playgroud)
版画
a
Run Code Online (Sandbox Code Playgroud)
因为a在my_list中最低也是True.
这有效,但很长,我想知道如何用理解或一行做到这一点?