次のようなリストのリストまたはタプルのリストにデータがあります。
data = [[1,2,3], [4,5,6], [7,8,9]]
data = [(1,2,3), (4,5,6), (7,8,9)]
そして、サブセットの 2 番目の要素で並べ替えたいです。つまり、 が2
から(1,2,3)
、5
が からである 2,5,8 で並べ替えるということ(4,5,6)
です。これを行う一般的な方法は何ですか? リストにはタプルまたはリストを保存する必要がありますか?
ベストアンサー1
sorted_by_second = sorted(data, key=lambda tup: tup[1])
または:
data.sort(key=lambda tup: tup[1]) # sorts in place
デフォルトのソートモードは昇順です。降順でソートするには、オプションを使用します。reverse=True
:
sorted_by_second = sorted(data, key=lambda tup: tup[1], reverse=True)
または:
data.sort(key=lambda tup: tup[1], reverse=True) # sorts in place