ホームページ > バックエンド開発 > Python チュートリアル > 内部リストの特定のインデックスによってリストのリストを並べ替えるにはどうすればよいですか?

内部リストの特定のインデックスによってリストのリストを並べ替えるにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-22 07:34:10
オリジナル
866 人が閲覧しました

How to Sort a List of Lists by a Specific Index of the Inner Lists?

内部リスト インデックスによるリストのリストの並べ替え

問題:

与えられたリストのリストで、それぞれの内部リストには以下が含まれます。複数の要素がある場合、内側の特定のインデックスによって外側のリストを並べ替えるにはどうすればよいですか? lists?

例:

次のリストのリストを考えてみましょう:

[[0, 1, 'f'],
[4, 2, 't'],
[9, 4, 'afsd']]
ログイン後にコピー

文字列フィールドで外側のリストを並べ替えたい場合内部リストの場合、これをどのように達成するかPython?

解決策:

解決策には、operator.itemgetter 関数の使用が含まれます。この関数を使用すると、各内部リストから特定の要素を抽出し、それを並べ替え基準として使用できます。使用方法は次のとおりです:

from operator import itemgetter

L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']]
sorted(L, key=itemgetter(2))
ログイン後にコピー

説明:

  • itemgetter(2) は、各内部リストから 3 番目の要素を抽出する関数を返します (インデックス 2、0 から始まります)。
  • sorted() のキー パラメーターは並べ替え基準を指定します。 itemgetter(2) を使用することで、文字列フィールドを並べ替えキーとして使用するように sort 関数に指示します。
  • 結果は、文字列フィールドによって決定される順序で並べ替えられたリストのリストになります。

補足:

itemgetter は内部リストのインデックスでソートするための効率的な方法ですが、このような単純なケースでは、ラムダ関数も使用できます。ただし、このような場合、ラムダ関数は通常遅くなります。

以上が内部リストの特定のインデックスによってリストのリストを並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート