首页 > 代码库 > Python:集合

Python:集合

set集合:

特点:无序,元素不重复

功能:关系测试,去重

集合创建:

>>> s  = set(python)   >>> s{p, t, y, h, o, n}>>> l1 = [python,pingy]>>> s = set(l1)>>> s{pingy, python}>>> s = set(hello)>>> s    {h, e, l, o}     #‘hello‘中有两个‘l‘,集合会去掉重复的元素。

集合修改:

.add:增加元素

.update:更一个新集合到另外一个集合

>>> s = set(python)>>> s{p, t, y, h, o, n}>>> s.add(abc)     #增加元素>>> s{p, t, y, abc, h, o, n}>>> s.update(bcd)  >>> s{p, t, y, abc, c, b, d, h, o, n}>>> se = set(linux)>>> se{i, x, u, l, n}>>> s.update(se)   #把se集合更新到s集合中>>> s{p, u, t, y, x, abc, c, b, d, i, h, l, o, n}

集合删除:

.remove:删除指定元素

del:删除整个集合

.pop:随机删除一个元素

.clear:清空集合

>>> s{p, u, t, y, x, abc, c, b, d, i, h, l, o, n}>>> s.remove(abc)    #删除指定元素>>> s{p, u, t, y, x, c, b, d, i, h, l, o, n}>>> se{i, x, u, l, n}>>> del se      #删除集合>>> s1{a, m, n}>>> s1.clear()   #清空集合>>> s1set()

集合类型操作:

in  not in:

==  !=

< >

>>> s1{a, m, n}>>> s2{a, m, o, w, n}>>> s1<s2True

&:交集

|:并集

-:差集

^:对称差集(去掉两个集合中的交集,留下剩下的元素的集合)

>>> s1{a, m, n}>>> s2{a, m, o, w, n}>>> s1<s2True>>> s1 & s2   #交集{a, m, n}>>> s1 | s2    #并集{w, a, m, o, n}>>> s2 -s1   #差集{w, o}

例:列表去重

>>> l = [1,2,3,4,5,6,4,3,6,7,9,12,2]>>> l[1, 2, 3, 4, 5, 6, 4, 3, 6, 7, 9, 12, 2]>>> list(set(l))[1, 2, 3, 4, 5, 6, 7, 9, 12]

 

Python:集合