Python系列:集合的使用(2)

举报
数据分析与统计学之美 发表于 2021/09/27 21:25:34 2021/09/27
【摘要】 python系列第七课

今天就带着大家开始我们——Python学习的第二课,Python数据类型之集合的介绍2。
在这里插入图片描述
前面我们已经对集合知识,已经做了一个详细的介绍了。这一节,我们专门给大家介绍集合函数,由于涉及知识太多,所以单独讲述。

1. add()

含义:向集合中添加指定的元素;

# 注:重复元素没办法加入。
>>> s = {1,2,3}
>>> s.add(2)
>>> s
{1, 2, 3}
>>> s.add(4)
>>> s
{1, 2, 3, 4}

2. remove()

含义:删除集合中指定的元素。如果元素不存在,报错;

>>> s = {1,2,3}
>>> s.remove(2)
>>> s
{1, 3}
>>> s.remove(12)
Traceback (most recent call last):
	File "<stdin>", line 1, in <module>
KeyError: 12

3. discard()

含义:删除集合中指定的元素。如果元素不存在,不进行任何操作;

>>> s = {1,2,3}
>>> s.discard(2)
>>> s
{1, 3}
>>> s.discard(12)
>>> s.discard(12) == None
True

4. pop():

含义:删除并返回任意集合中元素—一般不用

>>> s = {1,2,3}
>>> s.pop()
1
>>> s.pop()
2
>>> s.pop()
3
>>> s.pop()
Traceback (most recent call last):
	File "<stdin>", line 1, in <module>
KeyError: 'pop from an empty set'

5. clear()

含义:删除集合中的所有元素;

>>> s = {1,2,3}
>>> s.clear()
>>> s
set()

6. copy()

含义:对集合进行复制。(深拷贝?浅拷贝)

>>> s = {1,2,3}
>>> t = s.copy()
>>> t
{1, 2, 3}
>>> s is t
False

7. difference()

含义:两个集合的差集,产生新的集合,但不改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.difference(t)
{1}
>>> s
{1, 2, 3}
# 注:返回当前集合中存在,但参数集合中不存在的的元素,以集合返回。

8. difference_update()

含义:功能与 difference()相同,但改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.difference_update(t)
>>> s
{1}
# 注:因为改变了 s 原有集合,所以 s.difference_update(t)返回的是 None, s改变了,我们只需要操作 s 本身即可。

9. intersection()

含义:两个集合的交集,产生新的集合,但不改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.intersection(t)
{2, 3}
>>> s
{1, 2, 3}

10. intersection_update()

含义:功能与 difference()相同,但改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.intersection_update(t)
>>> s
{2, 3}

11. union()

含义:两个集合的并集,产生新的集合,但不改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.union(t)
{1, 2, 3, 4}
>>> s
{1, 2, 3}

12. update()

含义:功能与 union()相同,但改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.update(t)
>>> s
{1, 2, 3, 4}
>>> t
{2, 3, 4}

13. symmetric_difference()

含义:两个集合的对称差集;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.symmetric_difference(t)
{1, 4}
>>> s
{1, 2, 3}
# 注: “ 对称差集” 返回 s 中有, t 中有,但不同时在 s、 t 中共有的元素。

14. symmetric_difference_update()

含义:功能与 symmetric_difference ()相同,但改变当前集合;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> s.symmetric_difference_update(t)
>>> s
{1, 4}

15. isdisjoint()

含义:判断当前集合与参数集合,是否交集为空;是返回 True,否返回 False;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> u = {4,5,6}
>>> s.isdisjoint(t)
False
>>> s.isdisjoint(u)
True
>>> s
{1, 2, 3}

16. issubset()

含义:判断当前集合是否为参数集合,的子集;是返回 True,否返回 False;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> u = {4,5,6}
>>> s.issubset(t)
False
>>> s.issubset(u)
False
>>> s
{1, 2, 3}

17. issuperset()

含义:判断当前集合是否为参数集合,的父集;是返回 True,否返回 False;

>>> s = {1,2,3}
>>> t = {2,3,4}
>>> u = {1,2,3,4}
>>> v = {2,3}
>>> s.issuperset(t)
False
>>> s.issuperset(v)
True
>>> s
{1, 2, 3}
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。