Python学习笔记——集合

这篇博客探讨了Python中的集合数据结构,包括如何创建集合、集合的无序特性和去重功能,以及集合的访问操作、元素判断、子集、超集和相等性的判断。还详细介绍了集合的并集、交集、差集和对称差集的运算,这些运算对理解集合的操作至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

集合是一种无序且不重复的数据结构,可以动态地增删元素。

创建集合

集合用大括号{ }表示:

fruit = {'apple','orange','pear','banana'}

创建空集合可以用set(),但不可用{ }。{ }表示创建空字典。set()还可以将其它序列,比如列表和元组转换成集合。
集合与列表最大的差异就是集合中不会出现重复的元素。因此,即使创建集合时所给的值有重复,或者所用的列表或元组中有重复,得到的集合都不会有重复的元素。
如输入

fruit = {'apple','orange','apple','pear','orange','banana'}

得到的fruit是

{'apple','orange','pear','banana'}

集合的访问与操作

集合的常见操作和访问操作函数如下:
设s = {2,3,5,7,11}

函数示例结果说明
len()len(s)5返回集合中元素的数量
min()min(s)2返回集合中最小的元素
max()max(s)11返回集合中最大的元素
sum()sum(s)28返回集合中最大的元素
add()s.add(13){2,3,5,7,11,13}将一个元素加入集合中
remove()s.remove(3){2,5,7,11}从集合删除一个元素,若不存在,则抛出KeyError异常

虽然集合是无序的,但仍可以用for循环历遍集合中的每个元素:

for i in s:
	print(i)
2
3
4
7
11

元素、子集、超集和相等的判断

与序列类似,可以用in和not in判断某个元素是否再集合中。

s = {2,3,5,7,11}
5 in s
True

此外,还可以判断两个集合的关系。可以用方法,也可以直接用运算符。

s1 = {2,3,5,7}
s2 = {1,2,3,4,5,6,7}
print(s1.issubset(s2))  #子集
True
print(s1<s2)  #子集
True
print(s2.issuperset(s1))  #超集
True
print(s1>s2)  #超集
s3 = {5,7,3,2}
print(s1==s3)
True

集合的运算

集合可以进行:并集、交集、差集和对称差集的运算,这些运算可以用方法,也可以直接用运算符。这些运算都产生新的集合而不会对原来集合产生任何修改。

运算方法运算符
并集union()|
交集intersection()&
差集difference()-
对称差集symmetric_difference()^

对称差集是指两者共同元素以外的所有元素。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值