「Pythonの集合型」の版間の差分

提供: Python入門
移動: 案内検索
(ページの作成:「集合型(set型,セット型)は、Pythonのデータ型の1つで、リストに似ています。 '''読み方''' ;集合型:しゅうごうがた ;sets:せっつ _...」)
(相違点なし)

2015年12月30日 (水) 21:58時点における版

集合型(set型,セット型)は、Pythonのデータ型の1つで、リストに似ています。

読み方

集合型
しゅうごうがた
sets
せっつ

概要

集合型(セット型,set型)は、リストやディクショナリと似たデータ型です。

リストとの違いは

  • 要素に順番がない
  • 重複した要素を持たない

です。

セットの作り方

>>> s = set([1,2,3])
>>> s
set([1, 2, 3])

データは重複しない

このように 集合型では、データは重複しません。

>>> s = set([1,2,3,1,2,3])
>>> s
set([1, 2, 3])

ディクショナリ型を集合型にすると

ディクショナリ型(辞書型)を集合型にすると、キー名の集合になります。

>>> d = {'a':1,'b':2,'c':3}
>>> d
{'a': 1, 'c': 3, 'b': 2}
>>> e = set(d)
>>> e
set(['a', 'c', 'b'])

集合の要素数を調べる

>>> s = set([1,2,3])
>>> len(s)
3

要素を追加する

>>> s = set([1,2,3])
>>> s.add(4)
set([1, 2, 3, 4 ])

要素を削除する

>>> s = set([1,2,3])
>>> s.remove(2)
>>> s
set([1, 3])

コレクションの要素を追加する

>>> s = set([1,2,3])
>>> s
set([1, 2, 3])
>>> t  = set([4,5,6])
>>> s.update(t)
>>> s
set([1, 2, 3, 4, 5, 6])

セットを空にする

>>> s = set([1,2,3])
>>> s.clear()
>>> s
set([])

ソースコード

langs = set(['c', 'c++', 'python'])

セットの集合演算を行えます

s1.issubset(s2) 
s1 が s2 の 部分集合 であれば真を返します
s1.issuperset(s2) 
s2 が s1 の 部分集合 であれば真を返します
s1.intersection(s2) 
s1 が s2 の 積 (s1 & s2) を求めます
s1.union(s2) 
s1 が s2 の 和 (s1 | s2) を求めます
s1.difference(s2) 
s2 に現れない s1 の 要素を求めます (s1 - s2)
s1.symmetric_difference(s2) 
s1 が s2 の 両方に一度だけ現れる要素を求める (s1 ^ s2)
>>> s2 = set([1,2,3])
>>> s1 = set([1,2])
>>> s1.issubset(s2)
True

関連項目