<一覧に戻る

セットの演算(和、積、差)

セットは、重複しない要素の集合を表すデータ構造です。Pythonでは、セットを使ってさまざまな演算を行うことができます。この教材では、セットの和、積、差について学びます。

セットの演算の基本

セットの演算には、以下の3つがあります。

  1. 和(Union): 2つのセットの全ての要素を含む新しいセットを作成します。
  2. 積(Intersection): 2つのセットに共通する要素だけを含む新しいセットを作成します。
  3. 差(Difference): 1つのセットから、もう1つのセットに含まれる要素を除いた新しいセットを作成します。

では、これらの演算をサンプルコードを通じて見ていきましょう。

和(Union)

和は、union()メソッドまたは|演算子を使って求めることができます。

サンプルコード

# セットの定義
set_a = {1, 2, 3, 4}
set_b = {3, 4, 5, 6}

# 和の計算
set_union = set_a.union(set_b)
# または
set_union_operator = set_a | set_b

print("和(Union): ", set_union)
print("和(Union) using operator: ", set_union_operator)

コード解説

  • set_aset_bという2つのセットを定義しています。
  • set_a.union(set_b)set_a | set_bを用いて、両方のセットに含まれる全ての要素を持つ新しいセットを作成しています。
  • 結果は、{1, 2, 3, 4, 5, 6}となります。

積(Intersection)

積は、intersection()メソッドまたは&演算子を使って求めることができます。

サンプルコード

# セットの定義
set_a = {1, 2, 3, 4}
set_b = {3, 4, 5, 6}

# 積の計算
set_intersection = set_a.intersection(set_b)
# または
set_intersection_operator = set_a & set_b

print("積(Intersection): ", set_intersection)
print("積(Intersection) using operator: ", set_intersection_operator)

コード解説

  • set_aset_bを再び定義しています。
  • set_a.intersection(set_b)set_a & set_bを用いて、両方のセットに共通する要素を持つ新しいセットを作成しています。
  • 結果は、{3, 4}となります。

差(Difference)

差は、difference()メソッドまたは-演算子を使って求めることができます。

サンプルコード

# セットの定義
set_a = {1, 2, 3, 4}
set_b = {3, 4, 5, 6}

# 差の計算
set_difference = set_a.difference(set_b)
# または
set_difference_operator = set_a - set_b

print("差(Difference): ", set_difference)
print("差(Difference) using operator: ", set_difference_operator)

コード解説

  • 再度、set_aset_bを定義しています。
  • set_a.difference(set_b)set_a - set_bを使って、set_aからset_bに含まれる要素を除いた新しいセットを作成しています。
  • 結果は、{1, 2}となります。

まとめ

この教材では、セットの和、積、差の演算について学びました。セットは、データの重複を排除し、効率的に集合演算を行うのに非常に便利なデータ構造です。これらの演算を活用して、データ処理や分析を行ってみてください。

出力結果: