python集合的交集运算符 python中集合的交并补

一、背景

  在实际开发过程中,我们会遇到需要将相关数据关联起来的情况,例如,处理学生的学号、姓名、年龄、成绩等信息。另外,还会遇到需要将一些能够确定的不同对象看成一个整体的情况。Python提供了字典和集合这两种数据结构来解决上述问题。这里介绍一下python集合运算相关知识。

二、集合运算

  内置函数len()、max()、min()、sorted()等也适用于集合,另外,Python集合还支持数学意义上的交集、并集、差集、补集等运算。

操 作 符描述
S&T交集,返回一个新集合,包括同时在集合S和T中的元素
S|T并集,返回一个新集合,包括集合S和T中的所有元素
S-T差集,返回一个新集合,包括在集合S中但不在集合T中的元素
S^T补集,返回一个新集合,包括集合S和T中的元素,但不包括同时在集合S和T中的元素
S<=T如果S与T相同或S是T的子集,返回True,否则返回False,可以用S<T判断S是否是T的真子集
a_set = {1, 2, 3, 4, 5}  # 创建集合并赋值
b_set = {1, 2, 6, 7, 8}  # 创建集合并赋值
print(a_set & b_set)  # 交集

print(a_set | b_set)  # 并集
print(a_set - b_set)  # 差集
print(a_set ^ b_set)  # 补集

x = {1, 2, 3}  # 创建集合并赋值
y = {2, 3}  # 创建集合并赋值
z = {1, 2, 4}  # 创建集合并赋值
print(x >= y)  # y是否为x的子集
print(x <= z)  # x是否为z的子集

运行结果:

{1, 2}
{1, 2, 3, 4, 5, 6, 7, 8}
{3, 4, 5}
{3, 4, 5, 6, 7, 8}
True
False

参考:https://blog.51cto.com/u_16213700/9719846