Possible Duplicate:
python: how to sort a complex list on two different keys

我有一个元组列表.我想根据两个元素对它们进行排序.下面是一个例子

unsorted = [('a', 4, 2), ('a', 4, 3), ('a', 7, 2), ('a', 7, 3), ('b', 4, 2), ('b', 4, 3), ('b', 7, 2), ('b', 7, 3)]
sorted   = [('a', 4, 2), ('b', 4, 2), ('a', 4, 3), ('b', 4, 3), ('a', 7, 2), ('b', 7, 2), ('a', 7, 3), ('b', 7, 3)]

我知道如何根据第二个元素对它们进行排序:

sorted(unsorted, key = lambda element : element[1])

但是用两把 keys 怎么做呢?

推荐答案

sorted(unsorted, key=lambda element: (element[1], element[2]))

我假设从示例输出中订购了密钥.

Python-3.x相关问答推荐

字符串块数组:如何根据一个数组中的元素对另一个数组中的元素进行分组

如何检索与美汤相似的标签中的文本?

如何从包含SPAN文本的标记中获取链接

如何将项目添加到Python中具有固定大小的列表列表中

将两列的乘积连续添加到一列的累积和中

查找值始终为零的行 pandas

PyQt5 中耦合滑块和拨号小部件.解决结果不一致的问题

Django中自动设置/更新字段

如何查找以开头并替换的字符串

Pandas 转换为日期时间

如何对具有多个列值的 pandas 数据框进行数据透视/数据透视表

!date 的命令无法从 jupyter notebook 运行

删除重复项,但将值相加为一

在带有 M1 芯片(基于 ARM 的 Apple Silicon)的 Mac 上安装较早版本的 Python(3.8 之前)失败

Python heapify() 时间复杂度

如何在多核上运行 Keras?

try 在 Windows 10 高 DPI 显示器上解决模糊的 tkinter 文本 + zoom ,但担心我的方法不是 Pythonic 或不安全

如何区分文件之类的对象和文件路径之类的对象

具有不均匀间隙的 Python 范围

将列表列表转换为Python中的字典字典