2022-01-22
python学习
00
请注意,本文编写于 823 天前,最后修改于 822 天前,其中某些信息可能已经过时。

目录

1. 集合基础知识点
2. set基本操作
3. 集合运算:

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

本文作者:mykernel

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!