python 菜鸟-Python3 集合

本课一句话通俗话总结函数:

添加元素

setx.add(string|tuple|bool|number):void

setx.update(y [,z...]):void # y、z 为 list|tuple|dict

setx.clear():void

setx.copy():set # 深拷贝(指向新的内存地址)

删除元素

setx.remove(y):void|KeyError #如删除不存在的元素,有报错

setx.discard(y):void

setx.pop():mixed #随机删除集合元素,并返回被删除的元素

右全包含布尔真:判断 setx 集合的所有元素是否都包含在 sety 集合中

setx.issubset(sety):bool

>>> x = {"a", "b", "c"}

>>> y = {"f", "e", "d", "c", "b", "a"}

>>> x.issubset(y)

True

左全包含布尔真: 判断 sety 集合的所有元素是否都包含在原始 setx 的集合中

setx.issuperset(sety):bool

>>> x = {"a", "b", "c"}

>>> y = {"f", "e", "d", "c", "b", "a"}

>>> y.issuperset(x)

True

右半包含布尔取反:判断集合 sety 中是否有集合 setx 的任一元素(包含返回 False,不包含返回 True)

setx.isdisjoint(sety):bool

合并集合(并集):(注意:集合元素的去重、唯一性)

setx.union(sety [, setz...]):set

>>> x = {"a", "b", "c"}

>>> y = {"f", "d", "a"}

>>> z = {"c", "d", "e"}

>>> x.union(y, z)

{'c', 'd', 'f', 'e', 'b', 'a'}

左包含差集: 返回集合的差集,即返回的集合元素包含在第一个集合 x 中,但不包含在第二个集合 y(方法的参数)中

setx.difference(sety):set

左引用删除交集(无返回值,即直接修改原内存指向)

setx.difference_update(sety):void

>>> x,y

({'banana', 'cshit', 'vipkwd.com', 'alipay'}, {'google', 'runoob', 'facebook', 'alipay'})>>> type(x.difference_update(y))

>>> x,y

({'banana', 'cshit', 'vipkwd.com'}, {'google', 'runoob', 'facebook', 'alipay'})

左右差集:返回两个集合中不重复的元素集合,即会移除两个集合中都存在的元素

setx.symmetric_difference(sety):set

左引用删除交集且引用追加右差集(引用操作,无返回值)

setx.symmetric_difference_update(sett):void

左右交集:返回两个或更多集合中都包含的元素,即交集

setx.intersection(sety[, seyz....]):set

左引用交集

setx.intersection_update(sety):void

辅助理解:所有提到 "引用” 俩字的都是函数内部直接操作内存指向,故无返回值;反之:如果一个函数没有实质返回值,那么它一定是在函数内部改变了其他位置内容, 否则这个函数就是 dog shit,因为它不具有实质的意义。

vipkwd

vipkwd

ser***e@vipkwd.com2个月前 (09-05)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值