当前位置:  开发笔记 > 编程语言 > 正文

优雅的方法从元组列表中提取元组,具有最小的元素值

如何解决《优雅的方法从元组列表中提取元组,具有最小的元素值》经验,为你挑选了1个好方法。

我有元组列表,我希望元组在索引处具有最小值1.例如,如果我的列表如下:

a =[('a', 2), ('ee', 3), ('mm', 4), ('x', 1)]

我想要返回的元组('x', 1).

目前我正在使用sorted函数来获得这样的结果:

min=sorted(a, key=lambda t: t[1])[0]

有更好的方法吗?也许有min功能?



1> Moinuddin Qu..:

您可以使用min()key参数的函数,以便在列表中找到具有最小值的元组.无需对列表进行排序.因此,您的min电话应该是:

>>> min(a, key=lambda t: t[1])
('x', 1)

甚至更好地使用operator.itemgetter()而不是lambda表达式 ; 作为itemgetter比较快.在这种情况下,对min函数的调用应该是:

>>> from operator import itemgetter

>>> min(a, key=itemgetter(1))
('x', 1)

注意:min()是Python中的内置函数.您不应该将它用作变量名.

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有