「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 複数の Python リストで交差する要素を効率的に見つけるにはどうすればよいですか?

複数の Python リストで交差する要素を効率的に見つけるにはどうすればよいですか?

2024 年 11 月 8 日に公開
ブラウズ:527

How to Find Intersecting Elements in Multiple Python Lists Efficiently?

複数の Python リスト内の共有要素の識別

Python では、set.intersection() 関数を使用して 2 つのリストの共通部分を抽出できます。ただし、複数のリストの共通部分を決定するのはより複雑になります。これは、複数のリスト間で共有要素を効率的に識別するためのソリューションです。

回答で提供される式 set.intersection(*map(set,d)) は、リスト間の共通部分を見つけるための簡潔でパフォーマンスの高い方法を提供します。複数のリスト。そのコンポーネントを分解してみましょう。

  • d はリストのリストを表し、各要素自体がリストです。
  • map(set, d) は、d 内の各内部リストを に変換します。
  • * は、マップによって生成されたタプルを解凍し、各セットを個別のパラメータとして渡します。 set.intersection().

これらの操作を連鎖させることにより、d リスト内に含まれるすべてのセット (最初はリスト) の共通部分が得られます。指定された例では:

d = [[1,2,3,4], [2,3,4], [3,4,5,6,7]]

コード set.intersection(*map(set,d)) は次のような結果をもたらします:

[3, 4]

これこのアプローチは、設定されたデータ構造の効率を利用して、共有要素の順序を維持しながら重複を迅速に排除します。

リリースステートメント この記事は次の場所に転載されています: 1729519394 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3