2014-02-18 94 views

回答

2

您可以使用list.sort,其主要功能,operator.itemgetter

>>> 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

>>> 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

2

您可以指定由密鑰使用sorted內置排序列表:

>>> 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)] 
>>> 
相關問題