集合的定义
在Python中,集合(Set)是一种无序且元素唯一的数据结构。它类似于字典,但是只有键而没有值。集合中的元素必须是不可变的(例如整数、浮点数、元组等),而不能包含可变类型(例如列表、字典等)。在形式上,集合的所有元素都放在一对大括号中,两个相邻元素间使用逗号分隔。 集合最好的应用就是去重,因为集合中的每个元素都是唯一的。
# 集合的创建 使用{}创建
set1 = {1, 2, 3, 4, 5}
print(set1)
# 运行结果是{1, 2, 3, 4, 5}
# 使用set()创建
lists = [1, 2, 3, 4, 5, 6]
set2 = set(lists)
print(set2)
# 运行结果是{1, 2, 3, 4, 5}
集合的键与值
Python中的集合是由唯一的键组成的,没有键值对的概念。每个元素在集合中都是唯一的,重复的元素会被自动去重。
集合的常见操作
添加和删除元素
- 使用
add()
方法向集合中添加元素。 - 使用
remove()
方法删除指定元素
set1.add(4) # 添加4
set2.remove(5) # 删除5
- 通过update()方法更新整个元组
x = {"apple", "banana", "cherry"}
y = {"小帅", "小美", "小老弟"}
x.update(y)
print(x)
# 运行结果是{'小老弟', 'cherry', '小美', '小帅', 'apple', 'banana'}
- 通过update()方法添加序列元素
lists = [1, 2, 3]
set1 = set(lists)
set1.update([4])
print(set1)
# 运行结果是{1, 2, 3, 4}
- del 语句删除整个集合
set1 = {1, 2, 3}
del set1
print(set1)
- 运行结果
- clear()方法用于清空整个集合
set1 = {1, 2, 3}
set1.clear()
print(set1)
# 运行结果是set()
- 通过discard()方法丢弃指定的元素
set1 = {1, 2, 3}
set1.discard(2) # discard 英译为: 丢弃
print(set1)
# 运行结果是{1, 3}
- 通过remove()方法丢弃指定的元素
set1 = {1, 2, 3}
set1.remove(2) # remove 英译为: 删除
print(set1)
# 运行结果是{1, 3}
- 通过pop()方法弹出最上面的元素
set1 = {1, 2, 3}
print(setr1.pop())
print(set1)
# 运行结果是{2, 3}
查找集合中的元素
- 在集合中用in判断数据在集合序列; not in:判断数据不在集合序列。
set1 = {1, 2, 3}
print(1 in set1)
print(4 not in set1)
# 运行结果为True True
集合的交集、并集和差集数学运算
- 集合的交集
set1 = {1, 2, 3}
set2 = {1, 2}
print(set1 & set2)
# 运行结果是{1, 2}
- 集合的并集
set1 = {1, 2, 3}
set2 = {1, 2, 4}
print(set1 | set2)
# 运行结果是{1, 2, 3, 4}
- 集合的差集
set1 = {1, 2, 3} set2 = {1, 2, 4} print(set1 - set2) # 运行结果是{3}
迭代集合
- 使用
for
循环遍历集合中的元素
set1 = {1, 2, 3, 4, 5}
for item in set1:
print(item)
# 运行结果是1, 2, 3, 4, 5
集合在Python中是一个强大且灵活的数据结构,适合于需要快速查找和唯一元素的场景。它提供了丰富的操作方法,可以帮助简化和优化代码的实现