python的set是一個無序不重複元素集,基本功能包括關係測試和消除重複元素. 集合對象還支持並、交、差、對稱差等。python
1.建立集合ide
>>> a = {'abc','bcd','123'} >>> print(type(a)) <type 'set'> >>> b = set(['abc','abc','123','123']) >>> print(type(b)) <type 'set'>
2.演示交集測試
>>> print (a&b) set(['123', 'abc']) ###可使用intersection,返回一個新的 set 包含 a 和 b 中的公共元素 >>> a.intersection(b) set(['123', 'abc']) >>> c = a.intersection(b) >>> print c set(['123', 'abc'])
3.並集spa
>>> print (a|b) set(['bcd', '123', 'abc']) ###可使用union,返回一個新的 set 包含 a 和 b 中的每個元素 >>> a.union(b) set(['123', 'abc', 'bcd'])
4.差集code
>>> print (a-b) set(['bcd']) ###可使用difference,返回一個新的 set 包含 a 中有可是 b 中沒有的元素 >>> a.difference(b) set(['bcd']) >>> c = a.difference(b) >>> print c set(['bcd'])
5.對象
5.對稱差集blog
>>> print (a^b) set(['bcd']) ###可使用symmetric_difference,返回一個新的 set 包含 a 和 b 中不重複的元素 >>> a set(['bcd', '123', 'abc']) >>> b set(['123', 'abc', 'iter']) >>> a.symmetric_difference(b) set(['bcd', 'iter'])
6.add 添加一個元素圖片
>>> b.add('iter') >>> print b set(['123', 'abc', 'iter'])
7.update更新元素rem
>>> a.update(['www','qqq']) >>> print a set(['bcd', 'www', '123', 'qqq', 'abc'])
8.remove 刪除一個元素,若是元素不存在返回異常it
>>> a.remove('qqq') >>> print a set(['bcd', 'www', '123', 'abc']) >>> a.remove('gggg') Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'gggg'
9.清除set
>>> a.clear() >>> a set([]) >>> print a set([])
另外網上看到一個圖片很形象的演示set的功能