Python set(集合)是一个无序且不包含重复元素的数据结构
-
创建集合:
- 使用大括号
{}
创建一个空集合:my_set = {}
- 使用
set()
函数创建一个空集合:my_set = set()
- 使用可迭代对象(如列表、元组、字符串等)创建集合,重复元素会被自动过滤:
my_set = {1, 2, 3, 2, 1}
- 使用大括号
-
添加元素:
- 使用
add()
方法向集合中添加一个元素:my_set.add(4)
- 可以一次性添加多个元素:
my_set.update({5, 6, 7})
- 使用
-
删除元素:
- 使用
remove()
方法从集合中删除一个元素:my_set.remove(3)
- 如果元素不存在,会抛出
KeyError
异常,可以使用discard()
方法避免异常:my_set.discard(8)
- 使用
pop()
方法删除并返回集合中的一个随机元素:removed_element = my_set.pop()
- 使用
-
集合长度:
- 使用内置函数
len()
获取集合中元素的个数:length = len(my_set)
- 使用内置函数
-
成员关系测试:
- 使用
in
关键字检查元素是否在集合中:print(1 in my_set)
- 使用
not in
关键字检查元素是否不在集合中:print(8 not in my_set)
- 使用
-
遍历集合:
- 使用
for
循环遍历集合中的元素:for element in my_set: print(element)
- 使用
-
集合运算:
- 并集:
set1.union(set2)
或set1 | set2
- 交集:
set1.intersection(set2)
或set1 & set2
- 差集:
set1.difference(set2)
或set1 - set2
- 对称差集:
set1.symmetric_difference(set2)
或set1 ^ set2
- 子集/超集:
set1.issubset(set2)
检查set1
是否是set2
的子集,set1.issuperset(set2)
检查set1
是否是set2
的超集 - 等于/不等于:
set1.equals(set2)
检查两个集合是否相等(仅适用于 Python 3.9+),set1 == set2
检查两个集合是否相等
- 并集:
这些是 Python set 的基本操作,可以帮助你处理集合数据。