ホームページ >バックエンド開発 >Python チュートリアル >Python でネストされたリストとタプルを特定の要素で並べ替える方法

Python でネストされたリストとタプルを特定の要素で並べ替える方法

DDD
DDDオリジナル
2024-12-16 11:46:10585ブラウズ

How to Sort Nested Lists and Tuples by a Specific Element in Python?

特定の要素によるネストされたリスト/タプルの並べ替え

リストのリストまたはタプルのリストにデータを保存すると、柔軟なデータ編成が可能になります。ただし、このような構造をソートする場合、推奨される方法と適切なデータ表現について疑問が生じます。

2 番目の要素によるソート

リストまたはタプルのリストをソートするには各サブセットの 2 番目の要素の一般的なアプローチは、sorted() 関数をラムダ関数と組み合わせて利用することです。 key:

# Sort list of lists
sorted_by_second = sorted(data, key=lambda tup: tup[1])

# Sort list of tuples
sorted_by_second = sorted(data, key=lambda tup: tup[1])

または、ラムダ関数で sort() メソッドを使用してリストをその場で並べ替えることもできます:

# Sort list of lists in place
data.sort(key=lambda tup: tup[1])

# Sort list of tuples in place
data.sort(key=lambda tup: tup[1])

昇順または降順

デフォルトでは、ソートは昇順で行われます。降順で並べ替えるには、reverse=True を指定します。

# Sort list of lists in descending order
sorted_by_second = sorted(data, key=lambda tup: tup[1], reverse=True)

# Sort list of tuples in descending order
sorted_by_second = sorted(data, key=lambda tup: tup[1], reverse=True)

リストまたはタプルの保存

リストとタプルの両方を使用して、ネストされたデータ構造を保存できます。リストは変更可能であり、個々の要素の変更が可能ですが、タプルは不変であり、より優れたデータ整合性を提供します。

並べ替えの目的には、リストまたはタプルのいずれかを使用できます。ただし、並べ替え後にデータを変更する場合は、変更可能性があるため、リストの方が適しています。

追加のヒント

  • 2 番目以外の特定のインデックスで並べ替えるには、tup を置き換えます。 [1] tup[index] を使用したラムダ関数内。
  • 複数レベルの入れ子構造の場合、ソートとして複数のラムダ関数を使用します。キー (key=lambda など) tup: (tup[0], tup[2]).

以上がPython でネストされたリストとタプルを特定の要素で並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。