次のようなタプルのリストがあります:
[('abc', 121),('abc', 231),('abc', 148), ('abc',221)]
このリストをタプル内の整数値の昇順で並べ替えたいのですが、可能ですか?
ベストアンサー1
key
のキーワード引数を使用してみてくださいsorted()
。デフォルトでは昇順でソートされます。
sorted(
[('abc', 121), ('abc', 231), ('abc', 148), ('abc', 221)],
key=lambda x: x[1]
)
key
は、データ構造から比較可能な要素を取得する方法を識別する関数である必要があります。この場合、それはタプルの 2 番目の要素なので、 にアクセスします[1]
。
最適化については、 を使用した jamylak の回答を参照してくださいoperator.itemgetter(1)
。これは基本的に の高速バージョンですlambda x: x[1]
。