我读过this post并且还没有结束为我工作。用可变数量的键排列多维列表
编辑:我所描述的功能就像是在Excel中的排序功能......如果这使得它更清楚
这里是我的情况,我有一个制表符分隔的文本文档。每行大约有125,000行和6列(列由制表符分隔)。我将文档分成了一个二维列表。
我想写一个通用函数来排序二维列表。基本上我想有一个功能,我可以通过大列表,并且我想列出一个或多个列的关键字。很显然,我想把第一个键传给主分类点,然后第二个键等等。
还困惑吗?
下面是我想要做的一个例子。
Joel 18 Orange 1
Anna 17 Blue 2
Ryan 18 Green 3
Luke 16 Blue 1
Katy 13 Pink 5
Tyler 22 Blue 6
Bob 22 Blue 10
Garrett 24 Red 7
Ryan 18 Green 8
Leland 18 Yellow 9
说我通过这个列表,我的神奇功能,像这样:
sortByColumn(bigList, 0)
Anna 17 Blue 2
Bob 22 Blue 10
Garrett 24 Red 7
Joel 18 Orange 1
Katy 13 Pink 5
Leland 18 Yellow 9
Luke 16 Blue 1
Ryan 18 Green 3
Ryan 18 Green 8
Tyler 22 Blue 6
和...
sortByColumn(bigList, 2, 3)
Luke 16 Blue 1
Anna 17 Blue 2
Tyler 22 Blue 6
Bob 22 Blue 10
Ryan 18 Green 3
Ryan 18 Green 8
Joel 18 Orange 1
Katy 13 Pink 5
Garrett 24 Red 7
Leland 18 Yellow 9
任何线索?
这很棒。我从来没有听说过itemgetter(或者attrgetter,我现在也可以看到)。 – 2009-11-05 22:04:35
那是你的Guido时间机器。 http://catb.org/jargon/html/G/Guido.html – 2009-11-05 22:07:59
这正是我要找的。非常感谢! – 2009-11-08 22:41:44