Python集合

Python集合是一种无序且不重复的数据结构,常用于去重和数学运算,如并集、交集和差集。创建集合可使用大括号或set()函数,添加和删除元素分别用add()和remove()或discard()方法。集合推导式类似于列表推导,能方便地创建新集合。在处理单词统计等场景时,集合的去重功能尤为有用。
摘要由CSDN通过智能技术生成

Python集合(set)是一种无序且不重复的数据结构,通过使用大括号 {} 或 set() 函数创建。在Python中集合可以用于数学运算,如并集、交集和差集等。

创建集合

在Python中,我们可以使用大括号 {} 或 set() 函数来创建集合。如下面的例子所示,我们可以通过两种方式创建一个包含一些数字的集合:

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

# 使用 set() 函数创建集合
set2 = set([6, 7, 8, 9, 10])

需要注意的是,如果我们使用大括号创建一个空的集合,会得到一个空字典而不是一个空集合,因为两者的语法非常相似。因此,如果需要创建空集合,必须使用 set() 函数:

# 创建空集合
empty_set = set()

集合操作

Python集合有许多有用的操作方法,接下来我们将介绍其中的一些。

添加元素

向集合中添加元素可以使用 add() 方法:

set1.add(6)

删除元素

从集合中删除元素可以使用 remove() 或 discard() 方法:

set1.remove(6)
set2.discard(9)

这两个方法的区别在于,如果我们使用 remove() 方法删除一个不存在的元素,会抛出 KeyError 异常;而使用 discard() 方法则不会。

集合运算

Python集合支持许多有用的数学运算,例如并集、交集和差集等。我们可以使用 &、| 和 - 运算符进行这些操作:

set3 = {1, 2, 3}
set4 = {3, 4, 5}

# 并集
set5 = set3 | set4  # {1, 2, 3, 4, 5}

# 交集
set6 = set3 & set4  # {3}

# 差集
set7 = set3 - set4  # {1, 2}

除了这些基本操作之外,Python集合还支持更多的高级操作,例如对称差集、子集和超集判断等。

集合推导式

与列表推导式类似,集合也支持推导式。例如,我们可以使用集合推导式来创建一个包含所有偶数的集合:

set8 = {x for x in range(10) if x % 2 == 0}  # {0, 2, 4, 6, 8}

应用场景

Python集合的去重功能非常适合用在需要去重的场景中。例如,我们可以使用集合来统计文章中不同单词的个数:

article = 'This is a test article. The article contains some test words.'

word_list = article.split()
word_set = set(word_list)

print(len(word_set))  # 10

在这个例子中,我们使用 split() 方法将文章分割成单词列表,然后使用集合去重,最后得到文章中不同单词的个数。

总结

Python集合是一种非常实用的数据结构,可以用于去重、数学运算等场景。熟练掌握集合的操作,对于Python编程会有很大的帮助。除了本文介绍的这些操作之外,Python集合还有许多其他有用的方法,需要我们在实践中去探索和应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NBITer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值