<= 演算子を使用したチェック
前のステップでは、ある集合が別の集合の部分集合であるかどうかをチェックするために issubset()
メソッドを使用する方法を学びました。このステップでは、<=
演算子を使用して部分集合をチェックする別の方法を学びます。
<=
演算子は、ある集合が別の集合の部分集合であるかどうかをチェックするために使用できます。左側の集合が右側の集合の部分集合である場合、True
を返し、そうでない場合は False
を返します。
前のステップでのスキルの例を見直してみましょう。
skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
<=
演算子を使用して、skills1
が skills2
の部分集合であるかどうかをチェックしたいと思います。
VS Code を使用して ~/project
ディレクトリ内の subset_check.py
ファイルを開きます。ファイルの内容を以下のように変更します。
skills1 = {"Python", "Data Analysis"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
is_subset = skills1 <= skills2
print(is_subset)
ファイルを保存します。
次に、ターミナルで python
コマンドを使用してスクリプトを実行します。
python subset_check.py
出力は以下のようになります。
True
これは、skills1
が確かに skills2
の部分集合であることを示しています。
次に、skills1
が skills2
の部分集合ではない別のシナリオを考えてみましょう。
subset_check.py
ファイルを以下のように変更します。
skills1 = {"Python", "Data Analysis", "Cloud Computing"}
skills2 = {"Python", "Data Analysis", "Machine Learning", "SQL"}
is_subset = skills1 <= skills2
print(is_subset)
ファイルを保存し、再度実行します。
python subset_check.py
出力は以下のようになります。
False
これは、skills1
には skills2
に含まれていない "Cloud Computing" が含まれているためです。したがって、skills1
は skills2
の部分集合ではありません。
<=
演算子は、2 つの集合が等しい場合にも True
を返すことに注意することが重要です。例えば:
set1 = {1, 2, 3}
set2 = {1, 2, 3}
is_subset = set1 <= set2
print(is_subset)
set1
と set2
が等しいため、出力は True
になります。set1
が set2
の「真部分集合」(つまり、set1
は set2
の部分集合であるが set2
と等しくない)であるかどうかをチェックしたい場合は、代わりに <
演算子を使用できます。