web-dev-qa-db-ja.com

2つの要素に応じてタプルのリストをソートします

可能性のある複製:
python:2つの異なるキーで複雑なリストをソートする方法

タプルのリストを持っています。 2つの要素に応じて並べ替えたい。ここに次の例があります

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)]

2番目の要素でそれらを並べ替える方法を知っています。

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

しかし、2つのキーでそれを行うにはどうすればよいですか?

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

サンプル出力からのキーの順序を想定しています。

54