目錄
一、性質
二、集合的操作
1.添加
1.1 add
1.2 update
2.刪除
2.1 remove
2.2 discard
三、集合的運算
1.並集
2.交集
3.差集
4.對稱差集
5.其他
>>> s1 = {1,2,3}
>>> type(s1)
<class 'set'>
集合可以看做只有key的字典
1.無序
2.集合元素必須是可hash的,天生去重、
3.可變數據類型
>>> s2 = set([1,2,2,3,4,5,6])
>>> s2
{1, 2, 3, 4, 5, 6}
>>> s2 = {1,[2,3]}
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unhashable type: 'list'
只能添加一項
>>> s1
{1, 2, 3}
>>> s1.add(4)
>>> s1
{1, 2, 3, 4}
可添加多項,必須要傳入可迭代對象
>>> s1.update(['a','b'])
>>> s1
{1, 2, 3, 4, 'a', 'b'}
刪除指定元素
如果指定元素按不存在,就會報錯
>>> s1
{1, 2, 3, 4, 'a', 'b'}
>>> s1.remove("a")
>>> s1
{1, 2, 3, 4, 'b'}
>>> s1.remove("v")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'v'
刪除指定元素
如果指定元素按不存在,不會報錯
>>> s1
{1, 2, 3, 4, 'b'}
>>> s1.discard(1)
>>> s1
{2, 3, 4, 'b'}
>>> s1.discard(7)
>>> s1 = {1,2,3}
>>> s2 = {2,3,4}
>>> s1 | s2
{1, 2, 3, 4}
>>> s1 & s2
{2, 3}
>>> s1 - s2
{1}
>>> s1 ^ s2
{1, 4}
>>> max({1,2,3})
3
>>> min({1,2,3})
1
>>> sum({1,2,3})
6