2024-04-25 23:24:13 发布
网友
如何根据某个位置的int对元组列表进行排序?(无for循环)
例如,根据每个元组中的第三个元素对l = [(1,5,2),(7,1,4),(1,6,3)]进行排序?你知道吗
l = [(1,5,2),(7,1,4),(1,6,3)]
可以使用^{}、其键函数和^{}:
>>> from operator import itemgetter >>> l = [(1,5,2),(7,1,4),(1,6,3)] >>> l.sort(key=itemgetter(2)) >>> l [(1, 5, 2), (1, 6, 3), (7, 1, 4)] >>>
您也可以使用lambda function而不是operator.itemgetter:
operator.itemgetter
>>> l = [(1,5,2),(7,1,4),(1,6,3)] >>> l.sort(key=lambda x: x[2]) >>> l [(1, 5, 2), (1, 6, 3), (7, 1, 4)] >>>
然而,后者是generally faster。你知道吗
您可以使用^{}内置项指定对列表排序所依据的键:
>>> mylist = sorted([(1,5,2),(7,1,4),(1,6,3)], key = lambda t: t[2]) >>> mylist [(1, 5, 2), (1, 6, 3), (7, 1, 4)] >>>
可以使用^{} 、其键函数和^{} :
您也可以使用lambda function而不是
operator.itemgetter
:然而,后者是generally faster。你知道吗
您可以使用^{} 内置项指定对列表排序所依据的键:
相关问题 更多 >
编程相关推荐