Python 如何获取字典键列表中第二项的最小值?

Python 如何获取字典键列表中第二项的最小值?,python,list,dictionary,key,key-value,Python,List,Dictionary,Key,Key Value,假设我们有这样一本字典: Dict={'2020-12-23_36.JPG': [2959, 4690], '2020-12-28_106.JPG': [2956, 4592], '2020-12-28_117.JPG': [2993, 4752], '2020-12-28_13.JPG': [2919, 4921], '2020-12-28_141.JPG': [2984, 4944]} 我们如何从中检索列表中第二项值最低的键 import operator min(Dict.ite

假设我们有这样一本字典:

Dict={'2020-12-23_36.JPG': [2959, 4690],
 '2020-12-28_106.JPG': [2956, 4592],
 '2020-12-28_117.JPG': [2993, 4752],
 '2020-12-28_13.JPG': [2919, 4921],
 '2020-12-28_141.JPG': [2984, 4944]}
我们如何从中检索列表中第二项值最低的键

import operator
min(Dict.items(), key=operator.itemgetter(1))[0]
"2020-12-28_13.JPG"
这是有道理的,因为“2020-12-28_13.JPG”确实在列表的第一项中具有最低的值:2919

我尝试了以下操作,但没有成功:

min(Dict.items(), key=operator.itemgetter(1))[1][1]
"4921"
它仅打印列表的第二项,但基于列表的第一项

我还尝试:

min(Dict.items(), key=operator.itemgetter(1))[1])[0]
"TypeError: 'operator.itemgetter' object is not subscriptable"
预期结果

min(Dict.items(), key=operator.itemgetter(1))[1][1]
'2020-12-28_106.JPG' #(because 4592 is the lowest value of the -1 in list)

这实际上可能非常简单。基于任何iterable的任何“键”进行排序。在即时情况下,键是字典值中的第二项

sorted(Dict, key = lambda x: Dict[x][1])[0]

这实际上可能非常简单。基于任何iterable的任何“键”进行排序。在即时情况下,键是字典值中的第二项

sorted(Dict, key = lambda x: Dict[x][1])[0]

您的代码上有小的打字错误,请比较:

你的线路

min(Dict.items(), key=operator.itemgetter(1)[1])[0]
正确的

min(Dict.items(), key=operator.itemgetter(1))[1][0]

您的代码上有小的打字错误,请比较:

你的线路

min(Dict.items(), key=operator.itemgetter(1)[1])[0]
正确的

min(Dict.items(), key=operator.itemgetter(1))[1][0]

谢谢为使其完整,请将答案更改为:sorted(Dict,key=lambda x:Dict[x][1])[0]谢谢!为使其完整,您能否将答案更改为:sorted(Dict,key=lambda x:Dict[x][1])[0]