课时20:集合的运算

简介: 本内容介绍集合的运算,涵盖交集、并集、差集、异或集及子集等概念。通过Python代码示例详细说明各运算符(如 &、|、-、^、<=、<、>=、>)的使用方法,并解释其在实际编程中的应用。重点在于理解集合运算的基本原理及其在编程中的实现,帮助读者掌握集合运算的基础知识。

集合的运算

 

摘要:本内容为集合的运算的介绍。

 

01.集合的运算基础介绍


1.1集合的运算的基础信息

接下来说明集合,在初高中时学过集合,画出一个中括号,里面有几个数,或者使用画圈的方式表示集合。

左边一个圈,右边一个圈,中间相交的部分为交集,两个都包含的部分为并集。这些交集,并集运算在 Phyon 集合运算中可以进行。

接下来说明集合的运算,新建一个文件:

image.png

(1)在对集合做运算时,不会影响原来的集合,而是返回一个运算结果(1+1不会改变1,会返回一个2)

#创建两个集合
S={1,2,3,4,5}
S2={3,4,5,6,7}
(2) & 交集运算
S & S2
Print(S S2)

保存执行:

image.png

想查看结果:

Result =S&S2  # {3,4,5}
Print('result =',result)

保存执行:

image.png

两个集合相交,在A集合中有,在B集合中也有,中间的部分为交集。

(3)丨并集运算

Result =S | S2  #{1,2,3,4,5,6,7}

S与S2中都有的。像 Update 将两个集合合并为一个集合,并集运算,不会影响原来的集合。

保存执行:

image.png

(4) - 差集

Result =S-S2  #{1,2}

保存执行:

image.png

只在A集合中有,在B集合中没有的,是差集。

(5) ^ 异或集:获取只在一个集合中出现的元素

Result =S^S2  #{1,2,6,7}

保存执行:

image.png

或集是一个集合中有,另一个集合中没有的。差集和异或集使用较少,交集,并集使用较多。

(6) <=检查一个集合是否是另一个集合的子集

如果a集合中的元素全部都在b集合中出现,那么a集合就是b集合的子集,b集合是a集合超集

a={1,2,3}
b={1,2,3,4,5}

A中的元素在B中都有,则A是B的子集。

Result a <=b  #True(证明A确实为B的子集,A的元素在B中全有,B不是A的子集 )

保存执行:返回 True

image.png

Resu1t={1,2,3}<={1,2,3}

如果两个集合一模一样,则都为子集。

保存执行:

image.png

Resu1t={1,2,3,4,5}<={1,2,3}  #False

保存执行:

image.png

 

(7) <检查一个集合是否是另一个集合的子集

image.png

此情况不为真子集,因为两个集合中的元素是一样的。

image.png

如图,B中有和A中一样的元素,并且有A没有的元素,那么A是B的真子集。如果超集b中含有子a中所有元素,并且b中还有a中没有的元素,则b就是a的真超集,a是b的真子集。超集和子集要不一样,不一样就是真超集,真子集,若一样也算超集,子集,实际上一样,并没有真正的超过它,<就是把 = 情况去除。

Resu1t={1,2,3}<{1,2,3}   #False

保存执行:

image.png

Resu1t={1,2,3}<{1,2,3,4,5}   #True

保存执行:

image.png

(8) >=检查一个集合是否是另一个的超集

(9) >检查一个集合是否是另一个的真超集

整体使用并不多,关系体会即可。不计概念理解大于小于即可。

比如小于等于,前者后者小,就是他有你没有,那就是比如果你有的全有,并且还有你没有的,那他是较大的。所以其实就是比较一个大小

这个集合的运算,整体来说用的都不多,但是要做一下,因为用的时候要想得起来有这些东西,这里面学的都是一些理论知识全都记住,现在来讲不太现实,全都记住不可能。所以现在需要的是讲完以后多写几遍,多练几遍,现在先一脸熟,以后用的时候给回忆起来,现在来讲就够了。到现在为止,第三四章那个序列说完,序列全部内容讲解完毕。

除了序列,还有字典,集合。强调一下For循环,实际开发中较多,练习题目多加进行。

相关文章
|
网络虚拟化
|
缓存 监控 前端开发
性能优化方案详解,史上最全,必知必备!
本文详细解析了 9 大必备大厂优化方案,性能优化是一线互联网公司程序员的必备技能,非常重要。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
性能优化方案详解,史上最全,必知必备!
|
9月前
|
安全 Java API
Java SE 与 Java EE 区别解析及应用场景对比
在Java编程世界中,Java SE(Java Standard Edition)和Java EE(Java Enterprise Edition)是两个重要的平台版本,它们各自有着独特的定位和应用场景。理解它们之间的差异,对于开发者选择合适的技术栈进行项目开发至关重要。
1474 1
|
人工智能 算法 云计算
通义大模型合作计划升级发布
通义大模型合作计划升级发布
|
存储 数据管理 网络虚拟化
特殊网络类型分类
本文介绍了网络技术中的关键概念,包括虚拟局域网(VLAN)、存储区域网络(SAN)、网络桥接、接入网以及按拓扑结构和交换方式分类的网络类型。VLAN通过逻辑分隔提高性能与安全性;SAN提供高性能的数据存储解决方案;网络桥接实现不同网络间的互联互通;接入网解决“最后一千米”的连接问题。此外,文章详细对比了总线型、星型、树型、环型和网状型等网络拓扑结构的特点,并分析了电路交换、报文交换和分组交换的优缺点,为网络设计与应用提供了全面参考。
523 8
|
机器学习/深度学习 人工智能 DataWorks
《AI牵手DataWorks,实时数据分析“一路狂飙”》
在大数据时代,数据是企业的生命线,实时数据分析能力至关重要。阿里巴巴的DataWorks作为强大的数据中台工具,结合人工智能(AI)技术,彻底改写了实时数据分析格局。传统方法面临数据量增长、复杂结构及缺乏自适应能力等挑战,而AI通过机器学习和深度学习算法,实现了智能预警、个性化推荐和实时风险评估等应用场景,显著提升了数据分析的速度和精度。成功案例显示,某互联网公司引入AI赋能的DataWorks后,用户活跃度提升30%,购买转化率提高20%。未来,AI与新兴技术的融合将进一步推动实时数据分析的发展。
566 6
|
缓存 NoSQL Redis
Redis 缓存使用的实践
《Redis缓存最佳实践指南》涵盖缓存更新策略、缓存击穿防护、大key处理和性能优化。包括Cache Aside Pattern、Write Through、分布式锁、大key拆分和批量操作等技术,帮助你在项目中高效使用Redis缓存。
1531 22
|
负载均衡 算法 网络安全
阿里云WoSign SSL证书申请指南_沃通SSL技术文档
阿里云平台WoSign品牌SSL证书是由阿里云合作伙伴沃通CA提供,上线阿里云平台以来,成为阿里云平台热销的国产品牌证书产品,用户在阿里云平台https://www.aliyun.com/product/cas 可直接下单购买WoSign SSL证书,快捷部署到阿里云产品中。
3085 8
阿里云WoSign SSL证书申请指南_沃通SSL技术文档
|
Windows
github图床链接打开提示raw.githubusercontent.com无法访问解决
picgo上传图片不显示,到GitHub打开也不显示图片,粘贴链接访问提示“raw.githubusercontent.com无法访问”,百度搜索后修改了下hosts解决了。
1860 2
github图床链接打开提示raw.githubusercontent.com无法访问解决

热门文章

最新文章