いろいろ備忘録日記

主に .NET と Python絡みのメモを公開しています。

setの利用

python2.4から、コレクションオブジェクトとしてsetの概念が追加されています。
以前から、リストとハッシュ(辞書)とタプルなどが存在していましたが
そこにsetも加わったという事になります。


javaをやっている人などは、分かると思いますがsetとは、重複が許されない
リストみたいなものです。集合を表現します。


setは、set関数(ビルドイン)を用いて作成します。


以下、サンプルです。

>>> set_a = set("abcde")

>>> set_a
set(['a', 'c', 'b', 'e', 'd'])

>>> set_b = set("bcd")

>>> set_b
set(['c', 'b', 'd'])

>>> set_a & set_b
set(['c', 'b', 'd'])

>>> set_a | set_b
set(['a', 'c', 'b', 'e', 'd'])

>>> set_a ^ set_b
set(['a', 'e'])


みたまんまですね。set関数には、当然文字列だけではなく
リストやタプル、ハッシュも渡せます。
注意点ですが、ハッシュを渡した場合はハッシュのキー名で
セットオブジェクトが構築されます。