どの要素が削除されるかは任意だ。空の集合に対してpopメソッドを呼び出すとエラー(KeyError例外)が発生する。集合でも、リストやタプル、辞書と同様に、要素数の取得、要素の存在確認などの操作が可能だ。これらについてまず簡単にまとめておこう。max(myset)→3全ての要素が比較可能な場合。min(myset)→1全ての要素が比較可能な場合。3]集合にはsortメソッドがないが、組み込みのsorted関数を使って要素を並べ替えられる。集合が複数あるときには、それらを比較できる。集合Aが集合Bに含まれているかどうか(部分集合)、集合Aと集合Bが等しいかどうか、集合Aと集合Bには共通する要素がないかどうかなどだ。集合が等しいか等しくないかを調べる2つの集合が等しい(2つの集合が全く同じ要素を持っている)かどうかは==演算子で調べられる。同様に、2つの集合が等しくない(2つの集合の要素が完全には一致しない)かどうかは!=演算子で調べられる。実行結果を以下に示す。4}」という要素を持っている。そのため、両者は異なる集合と判定されている。これらの集合の間には包含関係がある。これを調べる方法を次に見てみよう。Bは集合Aの「上位集合」と呼ぶ。Bは集合Aの「真上位集合」と呼ぶ(集合Aが持つ全要素を集合Bが持っており、集合Bが持つ全要素を集合Aが持っている、つまり2つの集合が等しい場合には、一方がもう一方の部分集合かつ上位集合ともなる)。先ほどの集合myset2(myset1でも同様だ)とmyset3の関係を図にすると、次のようになる。集合myset2とmyset3の包含関係この場合、集合myset2は集合myset3の部分集合であり(この場合は真部分集合)、集合myset3は集合myset2の上位集合である(同じく、この場合は真上位集合)。ある集合が別の集合の部分集合であるかどうかは、以下に示す3つのメソッドと演算子で調べられる。issubsetメソッド<=演算子<演算子issubsetメソッドと<=演算子は「ある集合が別の集合の部分集合であるかどうか」を調べるもので、<演算子は「ある集合が別の集合の真部分集合であるかどうか」を調べるものだ。同様に、ある集合が別の集合の上位集合であるかどうかは、以下に示す3つのメソッドと演算子で調べられる。issupersetメソッド>=演算子>演算子issupersetメソッドと>=演算子は「ある集合が別の集合の上位集合であるかどうか」を調べるもので、>演算子は「ある集合が別の集合の真上位集合であるかどうか」を調べるものだ。issubsetメソッドとissupersetメソッドの構文を以下に示す。issubsetメソッド/issupersetメソッドissubset(other)issuperset(other)集合がもう一つの集合otherの部分集合かどうか(issubsetメソッド)、あるいは上位集合かどうか(issupersetメソッド)を調べる。otherには集合だけではなく、任意の反復可能オブジェクトを指定可能。注意しておきたいことが幾つかある。上記のメソッドは集合だけではなく反復可能オブジェクトを比較対象として指定できる上記のメソッドは「部分集合」もしくは「上位集合」であるかどうかを調べるもので、「真部分集合」や「真上位集合」であるかどうかは調べられない(真部分集合および真上位集合であるかどうかを調べるには演算子を使う必要がある)上記の演算子の演算子は2つとも集合である必要があるこれらのメソッド/演算子の使用例を以下に示す。実行結果を以下に示す。次に、複数の集合からその和/差/積/対称差を求める操作について見てみよう。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。