九、【Python】基础(集合的基础用法)

集合是 Python 内置的一种数据类型,它是由一组无序且不重复的元素所组成的。集合遵循数学中的集合概念,可用于数学抽象和计算机科学中的各种操作。在 Python 中,集合以大括号{}来表示,元素之间用逗号分隔。集合的特点是无序、不重复和可变,因此可以通过添加、删除和更新操作来修改集合。

1、创建集合

可以使用{}或set()创建一个集合,以{}方式创建的集合必须至少包含一个元素,否则被解释为字典。

代码示例:

# 使用{}创建一个集合
s1 = {'apple', 'banana', 'orange'}
print(s1)
# 使用set()创建一个空集合
s2 = set()
print(s2)

输出结果:

{'banana', 'orange', 'apple'}
set()

2、添加元素

可以使用add()方法向集合中添加一个元素,如果集合中已存在该元素,则什么也不做。

代码示例:

# 添加元素
s1.add('grape')
print(s1)

# 添加已存在的元素
s1.add('banana')
print(s1)

输出结果:

{'banana', 'orange', 'apple', 'grape'}
{'banana', 'orange', 'apple', 'grape'}

3、删除元素

可以使用remove()或discard()方法删除集合中的元素,如果元素不存在则抛出 KeyError,但是 discard() 不会抛出 KeyError。

代码示例:

# 删除元素
s1.remove('banana')
print(s1)

# 删除不存在的元素
s1.discard('watermelon')
print(s1)

输出结果:

{'orange', 'apple', 'grape'}
{'orange', 'apple', 'grape'}

4、集合运算

集合可以进行并集、交集、差集、对称差等运算,使用相应的运算符(+、*、-、^)或方法(union()、intersection()、difference()、symmetric_difference())实现。

代码示例:

# 定义两个集合
s1 = {1, 2, 3, 4}
s2 = {3, 4, 5, 6}

# 求并集
print(s1 | s2)
print(s1.union(s2))

# 求交集
print(s1 & s2)
print(s1.intersection(s2))

# 求差集
print(s1 - s2)
print(s1.difference(s2))


# 求对称差
print(s1 ^ s2)
print(s1.symmetric_difference(s2))

输出结果:

{1, 2, 3, 4, 5, 6}
{1, 2, 3, 4, 5, 6}
{3, 4}
{3, 4}
{1, 2}
{1, 2}
{1, 2, 5, 6}
{1, 2, 5, 6}

5、判断元素是否在集合中

可以使用in或not in关键字判断一个元素是否存在于集合中。

代码示例:

# 定义一个集合
s = {1, 2, 3, 4}

# 判断元素是否在集合中
print(3 in s)
print(5 not in s)

输出结果:

True
True

6、总结

Python 集合是一个非常实用的数据类型,它可以帮助我们有效地处理和整理数据,尤其是处理需要去除重复元素的数据场景。掌握 Python 集合的常用操作,可以帮助我们更加高效地实现各种算法和函数。



文章对你有用的话,麻烦点个赞吧!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序员微凉

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

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

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

打赏作者

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

抵扣说明:

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

余额充值