Python セット

Pythonのセット

セットは複数のアイテムを1つの変数に格納するために使用されます。

セットはPythonの4つの組み込みデータ型の1つで、データのコレクションを格納するために使用されます。他の3つはリスト、タプル、辞書であり、それぞれ異なる特性と使用法を持っています。

セットは波括弧で書かれます:

thisset = {"apple", "banana", "cherry"}
print(thisset)

注意:セットは順序付けられていないため、アイテムが表示される順序は保証されません。

セットのアイテム

セットのアイテムは順序付けられておらず、変更できず、重複した値を許容しません。

順序付けられていない

セットが順序付けられていないことは、セット内のアイテムに定義された順序がないことを意味します。

セットのアイテムは毎回異なる順序で表示され、インデックスやキーで参照することはできません。

変更不可

セットのアイテムは変更できないため、セットが作成された後にアイテムを変更、追加、削除することはできません。

セットが作成されたら、そのアイテムを変更することはできませんが、アイテムを削除したり新しいアイテムを追加することはできます。

重複を許容しない

セットは同じ値を持つ2つのアイテムを持つことができません。

thisset = {"apple", "banana", "cherry", "apple"}
print(thisset)

注意:セット内では、Trueと1、Falseと0は同じ値と見なされ、重複として扱われます。

thisset = {"apple", "banana", "cherry", True, 1, 2}
print(thisset)

thisset = {"apple", "banana", "cherry", False, True, 0}
print(thisset)

セットの長さを取得する

セットに含まれるアイテムの数を知るには、len()関数を使用します。

thisset = {"apple", "banana", "cherry"}
print(len(thisset))

セットのアイテム – データ型

セットのアイテムは任意のデータ型にすることができます。

set1 = {"apple", "banana", "cherry"}
set2 = {1, 5, 7, 9, 3}
set3 = {True, False, False}

文字列、整数、ブール値などの異なるデータ型の組み合わせを含むセットを作成することができます。

set1 = {"abc", 34, True, 40, "male"}

type()

Pythonの観点からは、セットはデータ型「set」として定義されています。

myset = {"apple", "banana", "cherry"}
print(type(myset))

set()コンストラクタ

新しいセットを作成するには、set()コンストラクタを使用することも可能です。

thisset = set(("apple", "banana", "cherry")) # ダブルラウンドブラケットに注意してください
print(thisset)

Pythonコレクション(配列)

Pythonプログラミング言語には4つのコレクションデータ型があります:

  • リストは順序があり、変更可能であり、重複したメンバーを許容します。
  • タプルは順序があり、変更できないが、重複したメンバーを許容します。
  • セットは順序がなく、変更できない(ただし、任意のタイミングで項目を削除または追加することができます)。重複するメンバーはありません。
  • 辞書は順序があり(Pythonバージョン3.7以降)、変更可能です。重複するメンバーはありません。

コレクションタイプを選ぶ際には、そのタイプの特性を理解することが役立ちます。特定のデータセットに適したタイプを選ぶことは意味の保持につながり、効率やセキュリティの向上にもつながるかもしれません。