python 如何比较两集合的大小关系
我就废话不多说了,大家还是直接看代码吧~
print({1,2}>{1})#True
补充:Python——集合是一个非常之牛逼的数据比较方式
什么是集合?对似懂非懂或者被集合搞晕了的同学可以来看一下。
首先不想说太多概念性的东西,免得又晕了!
请看下面我写的例子,看完之后自然就知道啥是集合以及如何去应用它
#变量a是一个集合类型 a=set() print(type(a)) #定义一个列表,并存入很多重复的数字 dt=[12,9,2,8,4,9,2,7,4,5,6,11,5,7,5,7,9,8,7,2] foriindt:#遍历列表 a.add(i)#将列表中的每一个元素添加进集合 #打印集合,发现,自动去掉重复的数字了 print(a) #5存在于集合中吗? print(5ina) #遍历集合 foritemina: print(item) #将集合转化成列表 set_list=list(a) print(set_list) print(type(set_list))
那么,集合还涉及到下面几个牛逼的玩意:
并集:
它将两个集合作为参数,并返回一个包含全部存在于两个集合中任意一个的元素的新集合,用union()方法,操作符是:"|"
交集:
它接收第2个集合为参数,返回的是仅包含同时存在于两个集合的那些元素,intersection方法实现,操作符是:"&"
差集:
它告诉我们哪些是剩下的元素,它是一个存储于或是存在于这个集合或是另一个集合,但不是同时存在于两个集合的对象的集合symmetric_difference方法实现,操作符是:"-"
继续看例子
a={1,2,3,4,5} b={6,2,3,7} #求a和b的并集,将两组数据中共同存在的数字去除掉后,生成一个不存在重复数字的新集合 print(a.union(b)) #求a和b的交集,将两组数据中共有的数字提取出来,并生成一个新的集合,让我们知道这两组数据中哪些数字都存在于两组数据里 print(a.intersection(b)) #求a和b的差集,将两组数据中所没有的数字提取出来后,生成一个新的集合 print(a.symmetric_difference(b)) #注意:他们的结果取决于谁是调用者,谁是参数,上面的3条例子中,a集合是调用者,b集合是参数 #a集合中的所有数字都存在于b集合的话,则返回true,a是调用者,b是参数 print(a.issubset(b)) #b集合作为参数,b集合中的所有元素都存在于a集合中的话,返回true print(a.issuperset(b)) #想要知道全部只存在于a集合而不存在于b集合的元素 print(a.difference(b))#结果是1,4,5 #反之 print(b.difference(a))#结果是6和7
总结:
通过测试说明,集合可以用来操作另一个集合,集合不仅仅只是一个容器
那么,应用场景一般有如下:
1、对两处不同的数据,如果要快速的结合起来去做分析,那么请用集合
2、那么快速的结合起来的目的一般是干嘛呢?,比如想知道两处数据中哪些是重复的,哪些是不同的
因此:
集合是一个非常之牛逼的数据比较方式
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。