3.3 集合(Set)
2023/6/9 3:22:09
本文主要是介绍3.3 集合(Set),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
集合(Set)是Python中的一个非常实用的数据结构,它是一个无序的、不重复的元素序列。集合用大括号 {}
表示,或者用 set()
函数创建一个空集合。集合的元素必须是不可变类型,例如整数、浮点数、字符串、元组等。
3.3.1 创建集合
创建集合的方法有两种:
- 使用大括号
{}
包围元素,例如:
fruit_set = {"apple", "banana", "cherry"} print(fruit_set) # 输出:{'apple', 'banana', 'cherry'}
- 使用
set()
函数创建空集合或将其他序列转换为集合,例如:
empty_set = set() print(empty_set) # 输出:set() number_list = [1, 2, 2, 3, 4, 5, 5, 6] number_set = set(number_list) print(number_set) # 输出:{1, 2, 3, 4, 5, 6}
3.3.2 常用集合操作
- 添加元素:使用
add()
方法添加一个元素。
fruit_set = {"apple", "banana", "cherry"} fruit_set.add("orange") print(fruit_set) # 输出:{'apple', 'banana', 'cherry', 'orange'}
- 删除元素:使用
remove()
方法删除指定元素。如果元素不存在,会抛出 KeyError 异常。使用discard()
方法删除指定元素,如果元素不存在,则不执行任何操作。
fruit_set = {"apple", "banana", "cherry"} fruit_set.remove("banana") print(fruit_set) # 输出:{'apple', 'cherry'} fruit_set.discard("orange") print(fruit_set) # 输出:{'apple', 'cherry'}
- 清空集合:使用
clear()
方法清空集合。
fruit_set = {"apple", "banana", "cherry"} fruit_set.clear() print(fruit_set) # 输出:set()
- 判断元素是否在集合中:使用
in
关键字。
fruit_set = {"apple", "banana", "cherry"} print("apple" in fruit_set) # 输出:True print("orange" in fruit_set) # 输出:False
3.3.3 集合之间的关系
集合之间可以进行并集、交集、差集和对称差等操作。
- 并集(Union):使用
|
运算符或union()
方法。
A = {1, 2, 3} B = {3, 4, 5} C = A | B print(C) # 输出:{1, 2, 3, 4, 5} D = A.union(B) print(D) # 输出:{1, 2, 3, 4, 5}
- 交集(Intersection):使用
&
运算符或intersection()
方法。
A = {1, 2, 3} B = {3, 4, 5} C = A & B print(C) # 输出:{3} D = A.intersection(B) print(D) # 输出:{3}
- 差集(Difference):使用
-
运算符或difference()
方法。
A = {1, 2, 3} B = {3, 4, 5} C = A - B print(C) # 输出:{1, 2} D = A.difference(B) print(D) # 输出:{1, 2}
- 对称差(Symmetric Difference):使用
^
运算符或symmetric_difference()
方法。
A = {1, 2, 3} B = {3, 4, 5} C = A ^ B print(C) # 输出:{1, 2, 4, 5} D = A.symmetric_difference(B) print(D) # 输出:{1, 2, 4, 5}
3.3.4 集合推导式
集合推导式是一种简洁的创建集合的方法,类似于列表推导式。集合推导式使用大括号 {}
包围,并在其中放置表达式和循环语句。例如,创建一个包含 1 到 10 的平方数的集合:
squares = {x**2 for x in range(1, 11)} print(squares) # 输出:{1, 64, 4, 36, 100, 9, 16, 49, 81, 25}
你可以在集合推导式中使用条件语句,例如,创建一个包含 1 到 10 中偶数平方数的集合:
even_squares = {x**2 for x in range(1, 11) if x % 2 == 0} print(even_squares) # 输出:{64, 4, 36, 100, 16}
现在你已经了解了 Python 集合的基本概念和操作。集合提供了一种方便的方法来存储不重复的元素,并在需要时执行集合操作。通过实践和学习更多实例,你将能够更熟练地运用 Python 集合解决问题。
这篇关于3.3 集合(Set)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-09都2024年了,你还不知道git worktree么?
- 2024-05-09Budibase:低代码平台的革新者
- 2024-05-09edu邮箱注册免费申请认证matlab教育版1年使用资格
- 2024-05-091Panel - 现代化、开源的 Linux 服务器运维管理面板
- 2024-02-08使用uBlock Origin将知乎网页版表情显示为纯文字标签
- 2024-02-07联想LXH-JME2209U键盘Linux下解锁F1-F12
- 2024-02-07配置DDNS使得移动设备KDEConnect自动相互识别
- 2024-01-16AI 图像自动补全 Uncrop 工具介绍
- 2024-01-16独立开发者碎碎念 1115
- 2024-01-04开启安全功能 ES 集群就安全了吗?