Python セットのサンプル

Pythonのセットのサンプルです。

確認環境
・Python 3.6.4

目次

セット

  • ひとつの変数に複数の値を設定できます。
  • 重複の値は持ちません。代入しようとしても追加されません。
  • 順序がありません。
  • 以下はPython 3.6.4ドキュメントのセットのリンクです。
    https://docs.python.jp/3/tutorial/datastructures.html#sets

セットを作成する

セットを作成するサンプルです。
3行目は、セットを作成しています。波かっこ({ })を使用します。
7行目もリスト[ ]からset関数を用いてセットを作成しています。

# coding: utf-8

s1 = {"赤","黄","青"}

print (s1) # {'青', '黄', '赤'}

s2 = set(["紫","白","黒"])

print (s2) # {'白', '黒', '紫'}

要素を追加する

要素を追加するサンプルです。
7行目はaddメソッドでセットに要素を追加しています。

# coding: utf-8

s1 = {"赤","黄","青"}

print(s1) # {'青', '黄', '赤'}

s1.add('オレンジ')

print(s1) #{'青', '黄', 'オレンジ', '赤'}

要素を削除する

要素を削除するサンプルです。
7行目はremoveメソッドでセットから要素を削除しています。

# coding: utf-8

s1 = {"赤","黄","青"}

print(s1) # {'青', '黄', '赤'}

s1.remove('黄')

print(s1) #{'赤', '青'}

和集合を求める

重複しない集合を返すサンプルです。
7行目はunionメソッドで和集合を返します。 青が重複していますが青は1つのみ表示されます。
11行目のように s1|s2とすることもできます。

# coding: utf-8

s1 = {"赤","黄","青"}

s2 = {"紫","白","青"}

s3 = s1.union(s2)

print(s3) #{'黄', '赤', '紫', '青', '白'}

print(s1|s2) #{'黄', '赤', '紫', '青', '白'}

差集合を求める

要素を引き算した結果を返すサンプルです。
7行目はdifferenceメソッドで差集合を返します。 s1からs2に青があるので青を除いた赤と黄が表示されます。
11行目のように s1-s2とすることもできます。

# coding: utf-8

s1 = {"赤","黄","青"}

s2 = {"紫","白","青"}

s3 = s1.difference(s2)

print(s3) #{'黄', '赤'}

print(s1-s2) #{'黄', '赤'}

共通集合(積集合)を求める

両方のセットに含まれる要素を返すサンプルです。
7行目はintersectionメソッドで共通集合(積集合)を返します。 両方に含まれる青が表示されます。
11行目のように s1&s2とすることもできます。

# coding: utf-8

s1 = {"赤","黄","青"}

s2 = {"紫","白","青"}

s3 = s1.intersection(s2)

print(s3) #{'青'}

print(s1&s2) #{'青'}

対称的差集合を求める

どちらか一方のみに含まれる要素を返すサンプルです。
7行目はsymmetric_differenceメソッドで対称的差集合を返します。 どちらか一方のみに含まれる紫、赤、黄、白が表示されます。
11行目のように s1^s2とすることもできます。

# coding: utf-8

s1 = {"赤","黄","青"}

s2 = {"紫","白","青"}

s3 = s1.symmetric_difference(s2)

print(s3) #{'紫', '赤', '黄', '白'}

print(s1^s2) #{'紫', '赤', '黄', '白'}

関連の記事

Python if文のサンプル
Python for文とbreakとcontinueのサンプル
Python while文とdo…while文にあたる書き方のサンプル
Python 関数のサンプル
Python リストのサンプル
Python タプルのサンプル
Python ディクショナリのサンプル

 はまったらエンジニア特化型Q&Aサイト
【teratail(テラテイル)】で質問しましょう!


△上に戻る