Python データ型とデータ構造 : 集合

株式会社リュディアです。Python のデータ型とデータ構造についてまとめていきます。今回は集合についてです。Python3 を前提としており動作は Anaconda3 で確認しています。

集合は文字通り数学の集合を表現するものです。さっそく例をみていきましょう。

set_fruits = {'Apple', 'Orange', 'Banana', 'Apple'}
set_fruits
>> {'Apple', 'Banana', 'Orange'}

まず定義で使うカッコですが辞書型と同じ { } を利用します。また今回の例では初期値としてで Apple を 2 回入れています。set_fruits の出力を見てください。Apple は 1 度しか表示されませんね。

集合として扱う場合には set_fruits にいくつの Apple が含まれているかは重要ではなく Apple が含まれているという事実のみが重要です。そのため 2重に定義された Apple は 1 つにまとめられます。

集合は要素の追加、削除、変更ができるかどうか、というと Python の2 種の集合のいずれを使うかに依存します。それぞれ set と frozenset と言います。set、いわゆる集合は追加、削除、変更が可能frozenset は追加、削除、変更が不可能です。以下、ぞれぞれの定義例のみを示しておきます。

# set の例
set_fruits = set(['Apple', 'Orange', 'Banana'])
set_fruits
>>{'Apple', 'Banana', 'Orange'}

# frozenset の例
set_frozen_fruits = frozenset(['Apple', 'Orange', 'Banana'])
set_frozen_fruits
>>frozenset({'Apple', 'Banana', 'Orange'})

set 関数を使って集合を定義したものと frozenset 関数を使ってfrozen集合を定義したものです。

今回は集合についてまとめてみました。集合の具体的な操作方法については別途まとめます。

では、ごきげんよう。

この記事が気に入ったらサポートをしてみませんか?