python公式ドキュメントはこちら
セット(集合)は、リストと同様に複数の要素から構成されるデータです。 リストとの違いは中の要素が重複されないこと、要素の順番はないことです。
目次
セット(集合)の書式
要素を波括弧”{}”で囲みます。重複する値がある場合は無視され、一意な値のみが残ります。
sample_set = {1, 1, 2, 3, 3, 3}
print(sample_set)
# {1, 2, 3}
基本的な使い方
セット(集合)に要素を追加する
set型に要素を追加するにはaddメソッドを使用します。
sample_set = {'A', 'A', 'B', 'C', 'C'}
sample_set.add('D')
print(sample_set)
# {'D', 'B', 'A', 'C'}
セット(集合)の要素を削除する
set型の要素を削除するにはdiscardメソッドやremoveメソッドを使用します。
sample_set = {'A', 'B', 'C', 'D', 'E'}
sample_set.discard('D')
print(sample_set)
# {'B', 'E', 'C', 'A'}
sample_set = {1, 2, 3, 4, 5}
sample_set.remove(3)
print(sample_set)
# {1, 2, 4, 5}
セット(集合)の要素を全て削除する
set型の要素を全て削除するにはclearメソッドを使用します。
sample_set = {'A', 'B', 'C', 'D', 'E'}
sample_set.clear()
print(sample_set)
# set()
set関数
セット(集合)はset関数でも作成できます。要素に重複のあるイテラブル(複数のデータ)をset関数の引数に設定します。
以下では、要素に重複のあるリストをset関数の引数に設定しています。リストからセット(集合)になることで、要素が重複されておらず、要素の順番がなくなっていることがわかります。
sample_alf_lst = ['A', 'A', 'B', 'B', 'C', 'D', 'D', 'E', 'E', 'E', 'E']
print(set(sample_alf_lst))
# {'E', 'A', 'D', 'C', 'B'}
sample_num_lst = [1, 1, 2, 3, 3, 3, 4, 4, 4, 4, 5, 5]
print(set(sample_num_lst))
# {1, 2, 3, 4, 5}
※サイト内「【python】set関数の使い方」に使用方法が書かれておりますのでぜひご覧ください。
空のセット(集合)の生成
空のセット(集合)を作成する場合、set関数を使用します。
sample_set = set()
print(sample_set)
print(type(sample_set))
# set()
# <class 'set'>
空の波括弧{}は辞書型dictと見なされるため、注意が必要です。
sample_set = {}
print(sample_set)
print(type(sample_set))
# {}
# <class 'dict'>
コメント