pythonコレクションが可変かどうかのまとめ

1172 ワード

コレクションは無秩序な可変シーケンスです.コレクション内の要素はhash可能、すなわち可変データ型である必要があります.
空の集合
a=set()
注意a={}は空の辞書を作成します.
set――可変集合.コレクション内の要素は動的に追加または削除できます.
frozenset――可変集合.コレクション内の要素は変更できません.
注意:並列、交差、差分などの戻り値は、左端のオペランドと同じタイプです.たとえば、s&tは交差を取ります.sコレクションはsetタイプのコレクションであり、tコレクションはfrozensetタイプのコレクションであり、返される結果はsetタイプのコレクションである.
set()で集合に変換することもできます

b=[1,2,3,4]

a=set(b)

a

{1,2,3,4}

{}を使用してコレクションを作成することもできます.

a={1,2,3,4,1}

a

{1,2,3,4}

辞書と同様に、集合は無秩序であるため、重複要素がある場合、そのうちの1つだけが保持されます.
可変集合は無秩序な可変集合である
frozenset(seq)で作成する

a=frozenset([1,2,3,(1,2,4)])

a

frozenset({1,2,3,(1,2,4)})

要素はhashのみ

frozenset([1,2,3,[1,2,4]])

error

主に辞書を作るためのキーです.tupleとの違いは、無秩序であり、要素は繰り返し不可能であり、要素は可変タイプでしかないことです.
説明:他の組合せデータ型を可変集合タイプに変換し(または可変集合タイプsetを可変集合タイプfrozensetに変換)、重複要素なしで任意の可変集合をソートできます.
frozenset()関数
構文:frozenset()->empty frozenset object可変空のセットを返す
frozenset(iterable)->frozenset object可変の新しいセットを返す
iterable――変換する組合せデータ型.