python集合
- Python中的集合和数学中的集合概念一样,存储不重复的元素
- 集合中的元素都是唯一的,互不相同
- 集合中只能存储不可变的数据:数字、字符串、元组
- Python用
{}
表示集合,其中的元素用逗号分隔 - Python集合是无序的
s = {1, 2, 3, 4}
print("type(s) = ", type(s))
print("s = ", s)
创建集合的方式:
- {元素1, 元素2, 元素3, …}:把大括号中的所有元素构造成一个集合,如果有重复元素,只保留一个
{}
:这是空字典,不是空集合set(x)
:把x转换成集合,x一般为列表、元组等- set():空集
s = {1, 2, 3, 4, 1, 2, 3}
print("type(s) = ", type(s))
print("s = ", s)
a = ['a', 'b', 'c']
s = set(a)
print("s = ", s)
集合基本操作
类别 | 函数 | 功能 |
---|
添加元素 | s.add(x) | 集合s加入元素x |
s.update(t) | 集合s中加入t,t是另一个集合或者元素 |
删除元素 | s.remove(x) | 集合s删除元素x,如果x不存在则报错 |
s.discard(x) | 集合s删除元素x,如果x不存在不会报错 |
s.pop() | 集合s随机删除一个元素 |
s.clear() | 集合s清空 |
判断类方法 | s.isdisjoint(t) | 判断集合s和集合t是否不相交 |
s.issubset(t) | 判断集合s是否为集合t的子集 |
s.issuperset(t) | 判断集合s是否为集合t的超集 |
s = set()
s.add(1)
s.add(2)
s.add(3)
t = {2, 3, 4}
print("s =", s)
print("t =", t)
s.update(t)
print("s =", s)
print("t =", t)
print(s.issuperset(t))
s.remove(1)
s.remove(3)
print("s =", s)
print("t =", t)
print(s.issubset(t))
集合基本运算
- S = {1, 2, 3}、T = {2, 3, 4}
- 交集:S & T
- 并集:S | T
- 差集:S - T、T - S
- 对称差集:S ^ T
S = {1, 2, 3}
T = {2, 3, 4}
print("交集 = ", S & T)
print("并集 = ", S | T)
print("差集 = ", S - T)
print("对称差集 = ", S ^ T)