文章目录
- 1 什么是集合
- 2 集合的创建
- 3 集合的增删改
- 3.1 add的功能
- 3.2 update的功能
- 3.3 remove的功能
- 3.4 clear的功能
- 3.4 del删除集合
- 4 集合的差集—difference函数
- 5 集合的交集—intersection函数
- 6 集合的并集-union函数
- 7 集合的 isdisjoint函数
1 什么是集合
- 集合(set)是一个无序的不重复元素序列
- 常用来对两个列表进行交并差的处理性
- 集合与列表一样,支持所有数据类型
集合与列表的区别:
2 集合的创建
- 通过set函数来创建集合,不能使用仍来创建空集合
# 空集合
a_set = set()
# 传入列表或元组
b_set = set([1,2,3])
# 传入元素
c_set = {1,2,3}
# 这是字典
d_set = {}
3 集合的增删改
3.1 add的功能
用于集合中添加一个元素,如果集合中已存在该元素则该函数不执行
用法:
set.add(item)
参数
item
:要添加到集合中的元素
返回值
无返回值
3.2 update的功能
加入一个新的集合(或列表,元组,字符串),如新集合内的元素在原集合中存在则无视
用法:
set.update(iterable)
参数
iterable
:集合,列表元组字符串
返回值:
无返回值,直接作用于原集合
3.3 remove的功能
将集合中的某个元素删除,如元素不存在将会报错
用法set.remove(item)
#注意是元素不是索引
参数:
item
:当前集合中的一个元素
返回值
无返回值,直接作用于原集合
3.4 clear的功能
清空当前集合中的所有元素
用法set.clear()
参数
无
返回值:
无返回值,直接作用于原集合
3.4 del删除集合
del只能删除集合对象自身,无法删除元素
注意事项:
- 集合无法通过索引获取元素
- 集合无获取元素的任何方法
- 集合只是用来处理列表或元组的一种临时类型,他不适合存储与传输
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zLbSlTVj-1611752760593)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20210127205955376.png)]
4 集合的差集—difference函数
a,b两个集合,由所有属于a且不属于b的元素组成的集合叫做a与b的差集
difference
返回集合的差集,即返回的集合元素包含在第个集合中,但不包含在第二个集合(方法的参数)中
用法
a_set.difference(b_set)
参数:
b_set:当前集合需要对比的集
返回值
返回原始集合于对比集合的差集
(即a_set与b_set的差集)
5 集合的交集—intersection函数
a,b两个集合分别拥有的相同的元素集,称为a与b的交集
用法
a_set.intersection(b_set)
参数
b_set
:与当前集合对比的1或多个集合
返回值:
返回原始集合与对比集合的交集
6 集合的并集-union函数
- a,b两个集合中所有的元素(去掉重复)即为a与b的并集
- 返回多个集合的并集,即包含了所有集合的元素,重复的元素只会出现一次
用法:
a_set.union(b_set)
参数:
b_set
:与当前集合对比的1或多个集合
返回值:
返回原始集合与对比集合的并集
7 集合的 isdisjoint函数
- 判断两个集合是否包含相同的元素,如果没有返回True,否则返回False
用法:
a_set.isdisjoint(b_set)
参数:
b_set
:与当前集合用来判断的集合
返回值
返回一个布尔值True或 False