python set集合

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的功能

相關文章
相關標籤/搜索