Python 中可以使用 sorted 函数对二维列表进行多重排序,具体方法如下:
1. 首先定义一个二维列表:
list = [['Bob', 20, 'M'], ['Alice', 18, 'F'], ['John', 22, 'M']]
2. 使用 sorted 函数进行多重排序:
sorted(list, key=lambda x:(x[2],x[1],x[0]))
结果如下:
[['Alice', 18, 'F'], ['John', 22, 'M'], ['Bob', 20, 'M']]
追问如果各个排序有升↑有降↓呢?比如在这个举例中:
要求以x[1]↑,x[2]↓,x[0]↑的顺序依次多重排序,又该怎么弄?