可能重复:
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])
但如何用两把钥匙做到这一点?
答案 0 :(得分:52)
sorted(unsorted, key=lambda element: (element[1], element[2]))
我假设从样本输出中订购了密钥。