python-集合类型set与frozenset(操作符、方法、内置函数)_keyerror frozenset({2})

现在能在网上找到很多很多的学习资源,有免费的也有收费的,当我拿到1套比较全的学习资源之前,我并没着急去看第1节,我而是去审视这套资源是否值得学习,有时候也会去问一些学长的意见,如果可以之后,我会对这套学习资源做1个学习计划,我的学习计划主要包括规划图和学习进度表。

分享给大家这份我薅到的免费视频资料,质量还不错,大家可以跟着学习

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

目录

简介

创建

操作符

成员操作符(in、not in)

判断子集(<、<=、>、>=)

求交集(&)

求并集(|)

求差集(-)

求对称差(^)

方法

判断相交

判断子集

求交集

求并集

求差集

求对称差

以下是仅适用于set的方法

更新

添加

删除

内置函数

长度

求和

最值

参考


简介

set 对象是由具有唯一性的可哈希对象所组成的无序多项集。 常见的用途包括成员检测、从序列中去除重复项以及数学中的集合类计算,例如交集、并集、差集与对称差集等等。frozenset无法进行更新、添加、删除。

创建

set([iterable])

如果有参数,返回可迭代对象形成的已去重集合。

s = set([1,2,3,4])
s
{1, 2, 3, 4}

不支持索引、切片等。

操作符

成员操作符(in、not in)

1 in s
True

判断子集(<、<=、>、>=)

set <= other

检测是否集合中的每个元素都在 other 之中。

set < other

检测集合是否为 other真子集,即 set <= other and set != other

ss = set([1,2,3,4,5])
s<ss
True
s<=ss
True
ss = set([1,2,3,4])
s<ss
False

set >= other

检测是否 other 中的每个元素都在集合之中。

set > other

检测集合是否为 other真超集,即 set >= other and set != other

s>ss
False
s>=ss
True
ss = ([1,2,3,4,5])
s>ss

ss = set([1,2,3,4,5])
s>ss
False

求交集(&)

set & other & ...

返回一个新集合,其中包含原集合以及 others 指定的所有集合中共有的元素。

s&ss
{1, 2, 3, 4}

求并集(|)

set | other | ...

返回一个新集合,其中包含来自原集合以及 others 指定的所有集合中的元素。

s|ss
{1, 2, 3, 4, 5}

求差集(-)

set - other - ...

返回一个新集合,其中包含原集合中在 others 指定的其他集合中不存在的元素。

ss-s
{5}

求对称差(^)

set ^ other

返回一个新集合,其中的元素或属于原集合或属于 other 指定的其他集合,但不能同时属于两者。

s^ss
{5}

方法

判断相交

isdisjoint(other)

如果集合中没有other 共有的元素则返回 True。 当且仅当两个集合的交集为空集合时,两者为不相交集合返回False

s.isdisjoint(ss)
False
ss = set([7,8,9])
s.isdisjoint(ss)
True

判断子集

issubset(other)

和<=等价

s.isdisjoint(ss)
True
s.issubset(ss)
False
ss = set([1,2,3,4])
s.issubset(ss)
True
ss = set([1,2,3,4,5])
s.issubset(ss)
True

issuperset(other)
和>=等价

ss = set([1,2,3])
s.issuperset(ss)
True
ss = set([1,2,3,4])
s.issuperset(ss)
True
ss = set([1,2,3,4,5])
s.issuperset(ss)
False

求交集

intersection(*others)
等价于&

s.intersection(ss)
{1, 2, 3, 4}

求并集

union(*others)
等价于|

s.union(ss)
{1, 2, 3, 4, 5}

求差集

difference(*others)

等价于-

s.difference(ss)
set()
ss.difference(s)
{5}

求对称差

symmetric_difference(other)

等价于^

s.symmetric_difference(ss)
{5}

以下是仅适用于set的方法

更新

update(*others)

set |= other | ...

更新集合,添加来自 others 中的所有元素。

s.update(ss)
s
{1, 2, 3, 4, 5}

intersection_update(*others)

set &= other & ...

更新集合,只保留其中在所有 others 中也存在的元素。

ss = set([2,3])
s.intersection_update(ss)
s
{2, 3}

difference_update(*others)

set -= other | ...

更新集合,移除其中也存在于 others 中的元素。

ss = set([1,3])

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值