在python中按第一个组元素排序

时间:2010-10-05 16:39:03

标签: python

我想知道如何让python命令我的元组集合,以便第一个类似的项目显示为分组,组按第一个项目排序。

order group
3     1
4     2
2     2
1     1

排序后

order group
1     1
3     1
2     2
4     2

Python列表

unordered = [(3, 1), (4, 2), (2, 2), (1, 1)]

1 个答案:

答案 0 :(得分:16)

我认为你的意思是unordered = [(3, 1), (4, 2), (2, 2), (1, 1)],因为你输入的那部分例子与其他两部分不兼容,对吗?

如果是,那么

>>> import operator
>>> sorted(unordered, key=operator.itemgetter(1,0))
[(1, 1), (3, 1), (2, 2), (4, 2)]

或者类似unordered.sort(key=operator.itemgetter(1,0))如果你想进行排序(给定变量名称我很确定你没有 - 如果它意味着将变量命名为“无序”将会非常奇怪订购! - )。