这几天写php程序,发现php里有一个array_multisort()函数十分好用,可以轻松对多维数组进行排序,查了查python的相关资料,视乎没有一个比较直接的函数来完成多维数组的排序
单个数组的排序很简单...ipython代码:
In [39]: array = [4, 2, 5, 1, 3]
In [40]: array.sort()
In [41]: array
Out[41]: [1, 2, 3, 4, 5]
多维数组的排序如直接用...sort讲会按第一维的数据进行排序,如:
In [42]: array = [ ['b', 4], ['e', 2], ['a', 5], ['d', 1], ['c', 3] ]
In [43]: array.sort...()
In [44]: array
Out[44]: [ ['a', 5], ['b', 4], ['c', 3], ['d', 1], ['e', 2] ]
如何按第二维的数据进行排序呢,我们可以用sort...函数中的key形参,代码接上,如:
In [45]: array.sort(key=lambda x:x[1])#lambda x:x[1]返回list的第二个数据
In [46]: array
Out