Python中的集合类型(set)

2023-03-14 00:00:00 python 集合 类型

集合(set)是一种无序、不可重复的数据结构,用于存储多个元素。集合中的元素可以是任何不可变的数据类型,如数字、字符串、元组等。

集合的主要特点如下:

  • 无序:集合中的元素没有特定的顺序,因此不能使用索引来访问元素。

  • 不可重复:集合中不允许存在重复的元素,每个元素只能出现一次。

  • 可变性:集合是可变的,可以添加、删除元素,但集合本身是不可哈希的。

  • 支持数学运算:集合支持各种数学运算,如交集、并集、差集等。

Python中使用大括号 {} 或 set() 函数来创建集合。例如:

# 使用大括号创建集合
s = {1, 2, 3, 4, 5}

# 使用set()函数创建集合
s = set([1, 2, 3, 4, 5])

可以使用 add() 方法向集合中添加元素,使用 remove() 方法删除集合中的元素。例如:

s = {1, 2, 3, 4, 5}

# 添加元素
s.add(6)

# 删除元素
s.remove(5)

集合可以进行各种操作,如并集、交集、差集等。例如:

s1 = {1, 2, 3, 4, 5}
s2 = {4, 5, 6, 7, 8}

# 并集
s3 = s1 | s2   # 或者 s3 = s1.union(s2)

# 交集
s4 = s1 & s2   # 或者 s4 = s1.intersection(s2)

# 差集
s5 = s1 - s2   # 或者 s5 = s1.difference(s2)

集合的常用操作和方法如下:

操作 描述
len(s) 返回集合中元素的个数
x in s 判断元素 x 是否在集合 s 中
x not in s 判断元素 x 是否不在集合 s 中
s.issubset(t) 判断集合 s 是否是集合 t 的子集
s.issuperset(t) 判断集合 s 是否是集合 t 的超集
s.union(t) 返回集合 s 和集合 t 的并集
s.intersection(t) 返回集合 s 和集合 t 的交集
s.difference(t) 返回集合 s 中存在,但不在集合 t 中的元素集合
s.symmetric_difference(t) 返回集合 s 和集合 t 中不共有的元素集合
s.copy() 返回集合 s 的副本
s.add(x) 向集合 s 中添加元素 x
s.remove(x) 从集合 s 中删除元素

相关文章