190603-Python 集合的基本操作

文章目录
  1. I. 集合基本使用
    1. 1. 创建集合
    2. 2. 基本操作
    3. 3. 集合操作
  2. II. 其他
    1. 1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
    2. 2. 声明
    3. 3. 扫描关注

在数学中,集合的一些常见操作,比如交集,并集,差集等在python的集合这个数据结构中,能否完美支持呢?

I. 集合基本使用

1. 创建集合

在python中创建一个集合比较简单,常见有两种方式

1
2
3
4
5
# 创建一个空集合
a_set = set()

# 创建并初始化一个集合
b_set = { 1, 2, 3}

需要注意的是,在python中创建字典,也用的是 {key: value},而 a={} 表示a是一个字典;所以我们创建空集合,必须使用 a=set()

2. 基本操作

集合有哪些基本操作呢?

添加

1
2
3
4
5
# 添加一个元素到集合中,如果不存在,则加入;否则不做任何处理
a.add(4)

# 通过列表,元组,字典方式,批量加入元素到集合中
a.update(...)

下面来演示下,批量加入的方式

output

从上面的实测可以知道:

  • update接收列表或者元组作为参数时,将列表/元组中的每个元素,逐一加入到集合中
  • update接收字典作为参数时,将字典中key逐一加到集合中

删除

删除集合中的元素,比较简单

1
a.remove(xx)

判断元素是否在集合中

使用的是python中的in语句

1
2
# 如果10在集合a中,则返回True;否则返回False
10 in a

3. 集合操作

接下来看一下集合的操作

集合交集

交集主要用到的是操作符 &,形如

1
a_set & b_set

output

集合并集

并集主要用到的是操作符 |,形如

1
a_set | b_set

output

补集/差集

补集表示在集合A中,但是不在集合B中的所有元素,组成的集合,在python中可以使用减号来实现

1
2
3
4
5
# 在集合a_set中,但是不在集合b_set
a_set - b_set

# 在集合b_set,但是不在集合 a_set
b_set - a_set

output

对称差集

简单来讲,这个就是并集 - 交集,有多种实现方式

1
2
3
4
5
6
# 最简单的方式
a_set ^ b_set
# 并集 - 交集
(a|b) - (a&b)
# 两个差集的并集
(a-b) | (b-a)

测试下输出

output

II. 其他

1. 一灰灰Bloghttps://liuyueyi.github.io/hexblog

一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛

2. 声明

尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激

3. 扫描关注

一灰灰blog

QrCode

知识星球

goals

# Python

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×