Python学習ノート:集合(set)関連関数

5849 ワード

1.len()
>>> s = set('aaa')
>>> s
{'a'}<span style="white-space:pre">			</span>#       
>>> len(s)
1

2.issubset()
tがsのサブセットかどうかを判断すると、Trueを返し、そうでなければFalse(フォーマット:s.issubset(t))を返します.
>>> s = set('a')
>>> t = set('abc')
>>> s
{'a'}
>>> t
{'a', 'b', 'c'}
>>> s.issubset(t)
True
>>> t.issubset(s)
False

3.issuperset()
sがtのスーパーセットであるか否かを判断し、TrueまたはFalseに戻る(スーパーセット:定義:1つのセットS 2の各要素がセットS 1にあり、セットS 1にS 2にない要素が含まれている可能性がある場合、セットS 1はS 2のスーパーセットである.S 1はS 2のスーパーセットであり、S 1にS 2にない要素が必ずある場合、S 1はS 2の真のスーパーセットであり、S 2はS 1の真のサブセットである).
(フォーマット:s.issuperset(t))
>>> s = set('a')
>>> t = set('abc')
>>> s
{'a'}
>>> t
{'a', 'b', 'c'}
>>> s.issuperset(t)
False
>>> t.issuperset(s)
True

4.union()
新しいセットを返します.新しいセットは2つのセットs、tの並列セットです(フォーマット:s.union(t))
>>> s = set('abc')
>>> t = set('123')
>>> s
{'a', 'b', 'c'}
s
>>> t
{'2', '1', '3'}
>>> s.union(t)
{'2', '3', 'c', '1', 'a', 'b'}

5.intersection()
2つの集合s,tの交差(フォーマット:s.intersection(t))である新しい集合を返します.
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.intersection(t)
{'a'}

6.difference()
新しいコレクションを返します.新しいコレクションはsのメンバーですが、tのメンバーではありません(フォーマット:s.difference(t))
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.difference(t)
{'2', '1', '3'}

7.symmetric_difference()
新しいコレクションを返します.新しいコレクションはs、tのメンバーですが、共有メンバーではありません(フォーマット:s.symmetric_difference(t))
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.symmetric_difference(t)
{'4', '2', '5', '3', '6', '1'}

8.copy()
sコレクションのコピー(フォーマット:s.copy()
>>> s = set('abc')
>>> s
{'a', 'b', 'c'}
>>> s.copy()
{'a', 'b', 'c'}
>>> t = s.copy()
>>> t
{'a', 'b', 'c'}

9.intersection_update()、difference_update()、symmetric_difference_update()
intersection_update():sのメンバーをsとtの共有メンバーにする(フォーマット:s.intersection_update(t))
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.intersection_update(t)
>>> s
{'a'}
>>> t
{'5', 'a', '4', '6'}

difference_update():sのメンバーをsに属するがtに属さないようにする(フォーマット:s.difference_update(t))
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.difference_update(t)
>>> s
{'3', '2', '1'}
>>> t
{'5', 'a', '4', '6'}

symmetric_difference_update():sのメンバーをsとtに属するが共有されないようにする(フォーマット:s.symmetric_difference_update(t))
>>> s = set('a123')
>>> t = set('a456')
>>> s
{'3', '2', '1', 'a'}
>>> t
{'5', 'a', '4', '6'}
>>> s.symmetric_difference_update(t)
>>> s
{'4', '2', '5', '3', '6', '1'}
>>> t
{'5', 'a', '4', '6'}

10.clear()
コレクション内のすべての要素を空にし、コレクションを空にします.(フォーマット:s.clear()
>>> s = set('abc')
>>> s
{'a', 'b', 'c'}
>>> s.clear()
>>> s
set()

11.pop()
最初の要素を削除して戻ります.コレクションが無秩序であるため、最初の要素はすべて確定しません.(フォーマット:s.pop()
>>> s = set('abcdef')
>>> s
{'d', 'f', 'e', 'c', 'a', 'b'}
>>> s.pop()
'd'
>>> s.pop()
'f'
>>> s.pop()
'e'
>>> s.pop()
'c'
>>> s.pop()
'a'
>>> s.pop()
'b'

12.discard()
objを削除し、コレクションにobjが存在しなければ異常は発生しません(removeと似ていますが、removeにobjが存在しないと異常が発生します)(フォーマット:s.discard(obj))
>>> s = set('abcdef')
>>> s
{'d', 'f', 'e', 'c', 'a', 'b'}
>>> s.discard('a')
>>> s
{'d', 'f', 'e', 'c', 'b'}
>>> s.discard('q')
>>> s
{'d', 'f', 'e', 'c', 'b'}