Pythonの集合(set)は、要素の重複を許さずに、順序不定(unordered)で要素を保持するデータ型です。集合の要素は、不変(immutable)なオブジェクトでなければなりません。
集合は、波括弧({})を使って定義します。例えば、次のようにして集合を定義できます。
fruits = {'apple', 'banana', 'orange'}
set()コンストラクタを使って、空の集合を作成することもできます。
empty_set = set()
以下に、集合に対して使用できる主な操作を説明します。
要素の追加
集合に要素を追加するには、add()
メソッドを使います。
fruits.add('grape')
要素の削除
集合から要素を削除するには、remove()
メソッドを使います。
fruits.remove('banana')
和集合、積集合、差集合
2つの集合の和集合、積集合、差集合を計算するには、以下のように演算子を使用します。
set1 = {1, 2, 3} set2 = {2, 3, 4} # 和集合を計算 union_set = set1 | set2 # 積集合を計算 intersection_set = set1 & set2 # 差集合を計算 difference_set = set1 - set2
部分集合、上位集合
ある集合が、別の集合の部分集合であるかどうかを判定するには、issubset()
メソッドを使用します。また、ある集合が、別の集合の上位集合であるかどうかを判定するには、issuperset()
メソッドを使用します。
set1 = {1, 2, 3} set2 = {2, 3} # set2がset1の部分集合であるかどうかを判定 print(set2.issubset(set1)) # True # set1がset2の上位集合であるかどうかを判定 print(set1.issuperset(set2)) # True
集合には、上記以外にも多くのメソッドがあります。詳細については、公式ドキュメントを参照してください。