Menu
CoddyTech

数学的演算 パート1

CoddyのPythonジャーニー「ロジックとフロー」セクションの一部。レッスン 33/78。

集合は、和集合、積集合、差集合、対称差などの数学的演算をサポートしています。これらの演算は、さまざまな方法で集合を比較したり組み合わせたりするのに役立ちます。

和集合(| または union()):重複を除いて、両方の集合の要素を組み合わせます。

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2
print(union_set)
# 出力: {1, 2, 3, 4, 5}

積集合 (& または intersection()): 両方の集合に共通する要素のみを含む集合を返します。

set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1 & set2
print(intersection_set)
# 出力: {3}

差集合(- または difference()):2番目の集合には含まれず、1番目の集合に含まれる要素を含む集合を返します。

set1 = {1, 2, 3}
set2 = {3, 4, 5}
difference_set = set1 - set2
print(difference_set)
# 出力: {1, 2}

対称差(^ または symmetric_difference()):どちらか一方の集合には含まれるが、両方には含まれない要素を含む集合を返します。

set1 = {1, 2, 3}
set2 = {3, 4, 5}
symmetric_difference_set = set1 ^ set2
print(symmetric_difference_set)
# 出力: {1, 2, 4, 5}
challenge icon

チャレンジ

簡単

set_operationsという名前の関数を作成し、引数として2つの集合set1とset2を受け取ります。この関数では、次の操作を行います。

  1. set1とset2の和集合を計算します。
  2. set1とset2の積集合を計算します。
  3. set1とset2の差集合(set2には含まれず、set1に含まれる要素)を計算します。
  4. set1とset2の対称差を計算します。
  5. これらの操作の結果を含む辞書を返します。キーは"union"、"intersection"、"difference"、"symmetric_difference"です。

テストコードは、返された辞書の各集合をリストに変換してソートし、表示します。そのため、{1, 2, 3, 4}と{3, 4, 5, 6}の場合、出力は次のようになります。

{'union': [1, 2, 3, 4, 5, 6], 'intersection': [3, 4], 'difference': [1, 2], 'symmetric_difference': [1, 2, 5, 6]}

自分で試してみよう

def set_operations(set1, set2):
    # 以下の各空のセットを正しいセット演算に置き換えてください
    # 和集合を計算する
    union_result = set()

    # Calculate the intersection
    intersection_result = set()

    # 差集合を計算する
    difference_result = set()

    # Calculate the symmetric difference
    symmetric_difference_result = set()

    # 結果を含む辞書を返す
    return {
        "union": union_result,
        "intersection": intersection_result,
        "difference": difference_result,
        "symmetric_difference": symmetric_difference_result
    }
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ロジックとフローのすべてのレッスン

自分で練習してみよう: Pythonオンラインコンパイラ