0

0

python-set集合类方法的详细介绍

高洛峰

高洛峰

发布时间:2017-03-20 11:11:45

|

1677人浏览过

|

来源于php中文网

原创

  s1=set([11,22,33,44,'tom','tony',11,77,2.5,])返回的是{11,22,33,44,‘tom’,‘tony’,77,2.5}(注意:返回的并不是一个字典,只是告诉你这个集合中含有这些元素,所以每次返回的结果元素的顺序可能是不一样的)

  s2=set([11,22,33,44,'Tom','tony',11,55,66,])返回的是{11,22,33,44,‘Tom’,‘tony’,55,66}(注意:返回的并不是一个字典,只是告诉你这个集合中含有这些元素,所以每次返回的结果元素的顺序可能是不一样的)

add(...)
  Add an element to a set.
  This has no effect if the element is already present.(如果元素已存在,则添加无效。就是说明set是一个没有重复元素的集合。)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

       s1.add('jimi')

立即学习Python免费学习笔记(深入)”;

     print(s1)

  结果:{33, 'tony', 2.5, 'jimi', 11, 44, 77, 22, 'Tom'}(注意:set是一个无序的集合,可能每次运行的结果的顺序不一样。)

difference(...)
  Return the difference of two or more sets as a new set.(求主差集,并会生成一个新的集合)
  (i.e. all elements that are in this set but not the others.)(注意:s1.difference(s2)表示的是找出s1中有而s2中没有的元素,并生成一个新的集合。s2.difference(s1)表示的是找出s2中有而s1中没有的元素,并生成一个新的集合。)

例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s3=s1.difference(s2)

     s4=s2.difference(s1)

     print(s3)

     print(s4)

  结果:{2.5, 77}

     {66, 55}

difference_update(...)
  Remove all elements of another set from this set.(从这个集合中移除另一组的所有元素。注意:s1.difference_update(s2)表示的是移除s1中两者共有的元素,保留不共有的元素,是对s1的修改而不是生成一个新列表。    s2.difference_update(s1)表示的是移除s2中两者共有的元素,保留不共有的元素,是对s2的修改而不是生成一个新列表。)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.difference_update(s2)

     print(s1)

  结果:{2.5, 77}

discard(...)
  Remove an element from a set if it is a member.(移除集合中的成员(元素))
  If the element is not a member, do nothing.(如果集合中没有这个成员,则不进行任何操作,也不会报错,这与Remove有区别。)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.discard(2.5)

  结果:{33, 'Tom', 11, 44, 77, 'tony', 22}

intersection(...)
  Return the intersection of two sets as a new set.(生成两个集合的交集,并生成一个新的列表)
  (i.e. all elements that are in both sets.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s5=s1.intersection(s2)

     s6=s2.intersection(s1)

     print(s5)

     print(s6)

  结果:{33, 'Tom', 11, 44, 22, 'tony'}

     {33, 11, 44, 'tony', 'Tom', 22}

intersection_update(...)
  Update a set with the intersection of itself and another.(功能和intersection(...)是一样的,但是s1.intersection(s2)在执行的时候是对原来的集合s1的修改,并不会生成一个新的集合)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.intersection(s2)

     s2.intersection(s1)

     print(s1)

     print(s2)

  结果:{33, 'Tom', 11, 44, 22, 'tony'}

     {33, 11, 44, 'tony', 'Tom', 22}

isdisjoint(...)
  Return True if two sets have a null intersection.(判断两个集合是否有交集,如果有则返回False,如果没有则返回True)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([100,50,500,])

     print(s1.isdisjoint(s2))

  结果:True

issubset(...)
  Report whether another set contains this set.(判断一个集合中的所有元素是否在另个集合中,s1.issubset(s2)表示的是s1中的每个元素都在s2中,注意与s1.issuperset(s2)的区别。  )

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,])

     s3=([11,22,33,44,'Tom','tony',11,55,66])

FaceSwapper
FaceSwapper

FaceSwapper是一款AI在线换脸工具,可以让用户在照片和视频中无缝交换面孔。

下载

     s1.issubset(s2)

     s1.issubset(s3)

     print(s1.issubset(s2))

     print(s1.issubset(s3))

  结果:True

     False

issuperset(...)
  Report whether this set contains another set.(判断一个集合中的所有元素是否在另个集合中,s1.issubset(s2)表示的是s2中的每个元素都在s1中,注意与s1.issubset(s2)的区别。  )

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,])

     s3=([11,22,33,44,'Tom','tony',11,55,66])

     s1.issuperset(s2)

     s1.issuperset(s3)

     print(s1.issuperset(s2))

     print(s1.issuperset(s3))

  结果:True

     False

pop(...)
  Remove and return an arbitrary set element.(随机删除一个元素)
  Raises KeyError if the set is empty.(如果集合为空,执行pop时会提醒KeyError)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.pop()

  结果:{33, 'Tom', 2.5, 11, 44, 77, 22}

remove(...)
  Remove an element from a set; it must be a member.(移除集合中的成员(元素),这个元素必须在这个集合中)
  If the element is not a member, raise a KeyError.(如果集合中没有这个成员,则会提示keyError,这与discard有区别。)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s1.remove(2.5)

     s1.remove('jimi')

  结果:{33, 'Tom', 'tony', 11, 44, 77, 22}

     KeyError: 'jimi'

symmetric_difference(...)
  Return the symmetric difference of two sets as a new set.(生成一个新的列表,这个列表是两个列表中不重复元素的集合,s1.symmetric_difference(s2)表示s1中有s2中没有的元素和s2中有s1中没有的元素的集合)

  (i.e. all elements that are in exactly one of the sets.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s4=s2.symmetric_difference(s1)

     print(s4)

  结果:{2.5, 66, 77, 55}

symmetric_difference_update(...)
  Update a set with the symmetric difference of itself and another.(对一个列表进行修改,两个列表中不重复元素的集合,s1.symmetric_difference(s2)表示s1中有s2中没有的元素和s2中有s1中没有的元素的集合)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.symmetric_difference_update(s2)

     print(s1)

  结果:{2.5, 66, 77, 55}

union(...)
  Return the union of sets as a new set.(生成一个新集合,改列表是两个列表的所以成员(元素)的集合,s1.union(s2)表示的是包含s1,s2所有元素的新集合)
  (i.e. all elements that are in either set.)

  例如:s1=set([11,22,33,44,'Tom','tony',11,77,2.5,])

     s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s3=s1.union(s2)

     print(s3)

  结果:{33, 2.5, 66, 'Tom', 11, 44, 77, 55, 22, 'tony'}

update(...)
  Update a set with the union of itself and others.(将一个集合更新到另一个集合,s1.update(s2)表示将s2中的所有元素放到s1中,完成对s1的更新修改)

  例如:s1=set([100,50,])

      s2=set([11,22,33,44,'Tom','tony',11,55,66,])

     s1.update(s2)

     print(s1)

  结果:{'tony', 33, 66, 100, 'Tom', 11, 44, 50, 22, 55}

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
go语言 注释编码
go语言 注释编码

本专题整合了go语言注释、注释规范等等内容,阅读专题下面的文章了解更多详细内容。

2

2026.01.31

go语言 math包
go语言 math包

本专题整合了go语言math包相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

go语言输入函数
go语言输入函数

本专题整合了go语言输入相关教程内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

golang 循环遍历
golang 循环遍历

本专题整合了golang循环遍历相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.31

Golang人工智能合集
Golang人工智能合集

本专题整合了Golang人工智能相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

76

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

73

2026.01.31

无需付费的漫画app大全
无需付费的漫画app大全

想找真正免费又无套路的漫画App?本合集精选多款永久免费、资源丰富、无广告干扰的优质漫画应用,涵盖国漫、日漫、韩漫及经典老番,满足各类阅读需求。阅读专题下面的文章了解更多详细内容。

67

2026.01.31

漫画免费在线观看地址大全
漫画免费在线观看地址大全

想找免费又资源丰富的漫画网站?本合集精选2025-2026年热门平台,涵盖国漫、日漫、韩漫等多类型作品,支持高清流畅阅读与离线缓存。阅读专题下面的文章了解更多详细内容。

19

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.4万人学习

Django 教程
Django 教程

共28课时 | 3.7万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号