
72
3
章
Python
組み込みのデータ構造と関数、ファイルの扱い
In [141]: c = a.copy()
In [142]: c |= b
In [143]: c
Out[143]: {1, 2, 3, 4, 5, 6, 7, 8}
In [144]: d = a.copy()
In [145]: d &= b
In [146]: d
Out[146]: {3, 4, 5}
ディクショナリのように、セットの要素は変更不可(
immutable
)でなければなりません。リストのよ
うな要素は、タプルに変換する必要があります。
In [147]: my_data = [1, 2, 3, 4]
In [148]: my_set = {tuple(my_data)}
In [149]: my_set
Out[149]: {(1, 2, 3, 4)}
あるセットが別のセットの部分集合であるかどうか(すべての要素が別の集合に含まれるかどうか)、
また、上位集合であるかどうか(別の集合のすべての
要素を持つかどうか)を調べるメソッドもありま
す。
In [150]: a_set = {1, 2, 3, 4, 5}
In [151]: {1, 2, 3}.issubset(a_set)
Out[151]: True
In [152]: a_set.issuperset({1, 2, 3})
Out[152]: True
セットは、含まれる内容が同じであるときのみ、等しいとみなされます。
In [153]: {1, 2, 3} == {3, ...