私は次のようなデータ構造を持っています:
[ ["id1", 123], ["id2", 1], ["id3", 6] ]
そして、次のように、2番目の変数に従って(降順で)順序付けたいと思います。
[ ["id1", 123], ["id3", 6], ["id2", 1] ]
それを行うための小さな関数を書くことはできますが、それを行うためのクールなワンライナーの方法があるとほぼ確信していますね。ありがとう。
私は次のようなデータ構造を持っています:
[ ["id1", 123], ["id2", 1], ["id3", 6] ]
そして、次のように、2番目の変数に従って(降順で)順序付けたいと思います。
[ ["id1", 123], ["id3", 6], ["id2", 1] ]
それを行うための小さな関数を書くことはできますが、それを行うためのクールなワンライナーの方法があるとほぼ確信していますね。ありがとう。
sorted
とを使用してそれを行うことができますitemgetter
:
>>> a = [ ["id1", 123], ["id2", 1], ["id3", 6] ]
>>> from operator import itemgetter
>>> sorted(a, key=itemgetter(1), reverse=True)
[['id1', 123], ['id3', 6], ['id2', 1]]
純粋にワンライナー(インポートなし)が必要な場合は、次のことができlambda
ます。
>>> sorted(a, key=lambda L: L[1], reverse=True)