返回列表列表中的最小元素值

Fin*_*ist -1 python

给出这样的列表列表:

[["fileA",7],["fileB",4],["fileC",17],["fileD",15]]
Run Code Online (Sandbox Code Playgroud)

你将如何返回与最小值相关的第一个元素?在这个例子中是"fileB",因为它具有最小的值(4).我猜最简单的方法是使用列表理解.

iCo*_*dez 8

实际上,列表理解不是最好的工具.相反,你应该使用min它的关键功能,并且operator.itemgetter:

>>> from operator import itemgetter
>>> lst = [["fileA",7],["fileB",4],["fileC",17],["fileD",15]]
>>> min(lst, key=itemgetter(1))
['fileB', 4]
>>> min(lst, key=itemgetter(1))[0]
'fileB'
>>>
Run Code Online (Sandbox Code Playgroud)