首页 > 代码库 > python——集合

python——集合

1. 集合的定义

>>> s = set([‘as‘, ‘yu‘, 1, 2, ‘1‘])
>>> s
{1, 2, ‘as‘, ‘yu‘, ‘1‘}
>>> s = set(‘long way‘)
>>> s
{‘n‘, ‘ ‘, ‘a‘, ‘y‘, ‘l‘, ‘w‘, ‘g‘, ‘o‘}


2. 集合是无序的,不存在重合元素的

>>> s = set([1, 2, 1, 2])
>>> s
{1, 2}


3. 集合添加

>>> s
{1, 2}
>>> s.add(‘Sam‘)   #添加一项
>>> s
{‘Sam‘, 1, 2}
>>> s0 = set([‘hh‘, ‘king‘])
>>> s.update(s0)     # 添加多项
>>> s
{1, 2, ‘king‘, ‘Sam‘, ‘hh‘}


4. 元素删除

>>> s
{1, 2, ‘king‘, ‘Sam‘, ‘hh‘}
>>> s.remove(‘king‘)
>>> s
{1, 2, ‘Sam‘, ‘hh‘}


5. 长度

>>> s
{1, 2, ‘Sam‘, ‘hh‘}
>>> len(s)
4


6. 属于

>>> s
{1, 2, ‘Sam‘, ‘hh‘}
>>> ‘Sam‘ in s
True
>>> ‘Jey‘not in s
True
>>> ‘Jey‘in s
False


7. 包含

>>> A = set([‘aa‘, ‘bb‘, ‘cc‘])
>>> B = set([‘bb‘, ‘cc‘])
>>> B.issubset(A)   #   B <= A 
True
>>> A.issuperset(B)  #    A >= B
True


8.  并集

>>> A = set([‘ff‘, ‘yu‘])
>>> B = set([‘kk‘, ‘oo‘])
>>> A.union(B)
{‘yu‘, ‘ff‘, ‘oo‘, ‘kk‘}
>>> A | B
{‘yu‘, ‘ff‘, ‘oo‘, ‘kk‘}


9. 交集

>>> B = set([‘kk‘, ‘oo‘])
>>> A = set([‘ff‘, ‘kk‘])
>>> A.intersection(B)
{‘kk‘}
>>> A & B
{‘kk‘}


10. 差集

>>> A = set([‘ff‘, ‘kk‘])
>>> B = set([‘kk‘, ‘oo‘])
>>> A.difference(B)
{‘ff‘}
>>> A - B
{‘ff‘}


11. 对称差集

>>> A = set([‘ff‘, ‘kk‘])
>>> B = set([‘kk‘, ‘oo‘])
>>> A.symmetric_difference(B)
{‘ff‘, ‘oo‘}
>>> A ^ B
{‘ff‘, ‘oo‘}


12. 复制

>>> A = set([‘ff‘, ‘kk‘])
>>> B = A.copy()   # 浅复制
>>> B
{‘ff‘, ‘kk‘}


python——集合