[Tutor] Sorting on different fields
Lie Ryan
lie.1296 at gmail.com
Sun Dec 7 11:31:11 CET 2008
On Sat, 06 Dec 2008 21:47:16 -0800, the New me wrote:
> is there a straightforward example?
>>> import operator
>>> k = [[1, 2, 3, 4], [4, 3, 2, 1], [1, 3, 2, 4], [2, 4, 3, 1]]
>>> sorted(l, key=operator.itemgetter(3, 2))
[[4, 3, 2, 1], [2, 4, 3, 1], [1, 3, 2, 4], [1, 2, 3, 4]]
>>> for k in sorted(l, key=operator.itemgetter(0, 2)): print k
...
[1, 3, 2, 4]
[1, 2, 3, 4]
[2, 4, 3, 1]
[4, 3, 2, 1]
>>> def genkey(item):
... return item[2]
...
>>> for k in sorted(l, key=genkey): print k
...
[4, 3, 2, 1]
[1, 3, 2, 4]
[1, 2, 3, 4]
[2, 4, 3, 1]
>>> def genkey(item):
... return item[2], item[1]
...
>>> for k in sorted(l, key=genkey): print k
...
[4, 3, 2, 1]
[1, 3, 2, 4]
[1, 2, 3, 4]
[2, 4, 3, 1]
More information about the Tutor
mailing list