AtCoderのABC287のB問題でリスト内のダブりをなくす作業が必要だったのですが、全然思い出せなかった。
「set型」は理解しているつもりでした。
しかし使ったことがなかったら、すぐには出てきませんでした。
セット(集合)型
セット型はリストやタプルと同じような感じのようです。
リストと違うのは、順番がなかったり、ダブりもダメみたいです。
使い方
set型の使い方は、辞書のように{}で囲みます。
s = {'A', 'B', 'C'} # {'B', 'A', 'C'}
set型は順番が変わってしまってます。
対してリストの場合は指定した順番で出ます。
l = ['A', 'B', 'C'] # ['A', 'B', 'C']
また、set型はダブりがある場合はダブり分が削除されます。
s = {'A', 'B', 'C', 'B'} # {'B', 'A', 'C'}
リスト型にしたい場合はlist()に入れます。
l = list(s) # ['B', 'A', 'C']
setのダブりをなくしたい場合は、list()に入れた後、setに戻します。
s = {'A', 'B', 'C', 'B'} l = list(s) s = set(l) # {'A', 'B', 'C'}
Webでは、set型の中にリストを入れているのをよく見ます。
set(['A', 'B', 'C', 'B']) # {'A', 'B', 'C'}
この使われ方が多いんですかね?
setにはadd,remove,pop,clearなどあるようです。理解したら追記します。