如何获取某项中具有最小值的元组?

How to get the tuple having the minimum value in a certain item?

results = [({'age': 1},      30), 
           ({'weight': 80},   5), 
           ({'label': 'abc'}, 7)]

如上所示,我有一个元组列表。有什么优雅的方法可以得到第二项最小的元组吗?

更一般地说,如果我需要得到最小的元组eval(2nd item)eval是一个转换函数。

您可以将 minkey arg 与 operator.itemgetter 一起使用:

from operator import itemgetter

results = [({'age': 1},      30), 
           ({'weight': 80},   5), 
           ({'label': 'abc'}, 7)]

print(min(results, key=itemgetter(1)))

输出:

({'weight': 80}, 5)