python之集合

1. 集合基础知识点

  1. 集合是无序的,不可重复的,可变的
  2. 集合的元素是要可以hash的,
  3. 集合的元素不可以索引,因为无序,
  4. 集合的元素是可以遍历的,所以可以迭代
    如何判断元素是否可以hash,hash(元素)
    常见的不可hash的类型有set,list

2. set基本操作

a. 创建

set(),空集合
set(iterable),可迭代对象
s = {1,2,3,’a’}

b. 增删查改

增删查改
增:
add(),添加一个元素 ==> 就地修改
update(*others) ,添加一个可迭代对象 ==> 就地修改

删:
remove(),移除一个不存在的元素会报错 ==> 就地修改
discard(),移除一个不存在的元素不会报错 ==> 就地修改
pop() ,随机弹出一个元素,==>弹出的元素
clear(),移除所有的元素,会引起垃圾回收

查:无法索引,但是可以for遍历
改:不支持修改,若要修改,先删后加

成员运算:in、not in
集合运算的销量是O(1)的

3. 集合运算:

并集:两个集合的元素放在一起
a.union(b) 或者 a | b ==> 返回一个新的集合
a.update(b) 或者 a |= b ==> 修改a集合

交集:找个两个集合工有的元素
a.intersection(b) 或者 a&b ==> 返回一个新的集合
a.intersection_update(b) ==> 修改a的集合

差集:a 差 b,属于a且不属于b的元素的集合
a.difference(b) 或者 a-b ==> 返回一个新的集合
a.difference_update(b) 或者 a -= b ==> 修改a的集合

对称差集:并集排除交集的部分
a.symmetric_differece(b) 或者 a^b ==> 返回一个新的集合
a.symmetric_differece_update(b) 或者 a^=b ==> 修改a的集合

集合判断:

a > b :b的元素在a里全部都可以找到,a不等于b
a >= b :b的元素在a里全部都可以找到,a可以等于b
a < b
a<= b

---------------- 谢谢光临 ----------------

本文标题:python之集合

文章作者:pxrux

发布时间:2019年01月22日 - 14:01

最后更新:2019年01月23日 - 14:01

原始链接:http://www.mykernel.cn/python-set.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

0%