Python のリストで共通要素を見つける

PythonPythonBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Python では、セットの積集合演算を使って 2 つのリスト間の共通要素を簡単に見つけることができます。このチャレンジでは、2 つのリストを入力として受け取り、両方の入力リストに存在する要素のみを含む新しいリストを返す関数を書くよう求められます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/comments("Comments") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/build_in_functions("Build-in Functions") python/PythonStandardLibraryGroup -.-> python/data_collections("Data Collections") subgraph Lab Skills python/variables_data_types -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/comments -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/lists -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/tuples -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/function_definition -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/build_in_functions -.-> lab-13664{{"Python のリストで共通要素を見つける"}} python/data_collections -.-> lab-13664{{"Python のリストで共通要素を見つける"}} end

リストの積集合

2 つのリスト ab を入力として受け取り、ab の両方に存在する要素のみを含む新しいリストを返す関数 list_intersection(a, b) を書きます。共通要素がない場合は、関数は空のリストを返す必要があります。

def intersection(a, b):
  _a, _b = set(a), set(b)
  return list(_a & _b)
intersection([1, 2, 3], [4, 3, 2]) ## [2, 3]

概要

このチャレンジを解くには、入力リストをセットに変換し、その後セットの積集合演算を使って共通要素を見つける必要があります。最後に、得られたセットを再びリストに変換して返します。