python集合的运算(交集、并集、差集、补集)

Python050

python集合的运算(交集、并集、差集、补集),第1张

我们在遇到一些问题的时候,使用集合的交集、并集和差集能够更便捷的帮助我们去解决问题,看下面一个例子。

某学校有两个班级,班级A需要学习数学、语文、英语、物理、化学和生物,班级B需要学习数学、语文、英语、政治、地理和历史。

我们可以直接看出A班级和B班级的交集为数学、语文和英语,并集为数学、语文、英语、物理、化学、生物、政治、地理、历史,A和B的差集为物理、化学和生物。

那么怎么使用Python去完成这些运算?

我们先在这里定义两个集合,

因为是求交集,因此A和B的位置调换依然不影响结果。

使用集合求并集的方式同样也是两种方式,一种是使用 ‘|’ 运算符进行操作,一种是使用 union() 方法来实现。

求并集的时候同样不需要注意 A 和 B 的位置关系。

使用集合求差集的方式同样也是两种方式,一种是使用 ‘-’ 运算符进行操作,一种是使用 difference() 方法来实现。

在方法2中注意 A 和 B 的位置不同的时候是有区别的,如果是 A 使用 difference() 方法,那么是输出 A 中有而 B 中没有的元素,如果是 B 使用 difference() 方法,那么是输出 B 中有而 A 中没有的元素。

学习完了集合,四种核心集合我们已经基本掌握,接下来几节我们来通过学习一些字符串的相关操作,学习字符串的过程中会穿插着前面简单介绍过但没仔细讲解的方法及操作。

A在B中的相对补集:

元素属于B,但不属于A。写作B - A,读作“A在B中的相对补集”。

以{1,2,3}为例说明子集和真子集:

子集为{1}、{2}、{3}、{1,2}、{1,3}、{2,3}、它本身、再加个空集

真子集为{1}、{2}、{3}、{1,2}、{1,3}、{2,3}、再加个空集,不包括它本身。

非空真子集为{1}、{2}、{3}、{1,2}、{1,3}、{2,3},不包括它本身及空集。

运行结果:

in 不能用来判断子集,可以判断元素是否存在于集合中

运行结果:

https://www.videoc.cn/pages/208120043

https://baike.baidu.com/item/%E7%9B%B8%E5%AF%B9%E8%A1%A5%E9%9B%86?fromtitle=%E7%BB%9D%E5%AF%B9%E8%A1%A5%E9%9B%86&fromid=942400

https://blog.csdn.net/liu_yuan_kai/article/details/81127422

https://blog.csdn.net/weixin_36670529/article/details/107102920