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

集合には、上記以外にも多くのメソッドがあります。詳細については、公式ドキュメントを参照してください。

リンク

Sets[EN]