Python学习——集合

这篇具有很好参考价值的文章主要介绍了Python学习——集合。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、集合的定义
集合也是Python语言所提供的内置数据结构,集合与列表、字典一样都属于可变类型的序列,集合是没有value的字典,所以集合也是无序的。
二、集合的创建
方式一:使用大括号进行创建

#使用大括号创建结合
s={1,3,5,7,9}
print(s)

运行结果
Python学习——集合
方法二:使用内置函数set进行创建,同时也可以把其他数据结构转换为集合。

#使用内置函数创建
#产生06的数作为集合
s=set(range(6))
print(s)
#将列表转化为集合
print(set([0,1,2,3,4]))
#将元组转换成集合
print(set((5,6,7,8)))
#将字符串转化为集合
print(set('python'))
#将集合转化为集合
print(set({9,10,11,12}))
#创建一个空的集合
print(set())

运行结果
Python学习——集合
注意因为集合可以视作没有值的字典,所以可以理解为只有键,故集合中的元素不能重复,如果重复则会被覆盖。

#集合中的元素不能重复,否则会被覆盖
s={1,1,2,1,3,5,5,7}
print(s)

运行结果
Python学习——集合
三、集合元素的判断
与前面一样,使用in或not in ,输出结果是true和false。

s={1,3,5,7,9}
print(1 in s)
print(1 not in s)
print(100 in s)
print(100 not in s)

运行结果
Python学习——集合
四、集合元素的添加
(1)使用add(),一次添加一个元素

s={0,1,2,3,4,5,6}
print('原集合',s)

#使用add,添加一个元素
s.add(7)
print('添加之后的集合',s)

运行结果
Python学习——集合
(2)使用update(),至少添加一个元素

s={0,1,2,3,4,5,6}
print('原集合',s)

#使用update,至少添加一个元素
s.update({7,8,9,10,11})
print('添加后的',s)

运行结果Python学习——集合
五、集合元素的删除
(1)使用remove(),一次删除一个指定元素,如果指定元素不存在,报错KeyError

s={0,1,2,3,4,5,6}
print('原集合',s)

s.remove(1)
print('删除后的',s)

s.remove(100)
print(s)

运行结果
Python学习——集合
(2)使用discard(),一次删除一个指定的元素,如果指定元素不存在,也不会报错,只会输出原来的列表

s={0,1,2,3,4,5,6}
print('原集合',s)

s.discard(1)
print('删除后的',s)

s.discard(100)
print(s)

运行结果Python学习——集合
(3)使用pop(),一次删除且只能删除一个任意元素。

s={0,1,2,3,4,5,6}
print('原集合',s)

#使用pop(),一次删除且只能删除一个任意元素。
s.pop()
print(s)

运行结果
Python学习——集合
(4)使用clear(),清空集合。

s={0,1,2,3,4,5,6}
print('原集合',s)

#使用pop(),一次删除且只能删除一个任意元素。
s.clear()
print(s)

运行结果
Python学习——集合

六、集合间的关系
由之前的知识储备可知,集合间的关系有相等,谁是谁的子集,谁是谁的超集,两集合之间是否有交集等。
(1)集合相等

#判断集合是否相等
s1={1,2,3,4}
s2={4,3,2,1}
print(s1==s2)

我们知道集合中的元素是无序的,所以运行结果为
Python学习——集合
(2)子集与超集
子集

#子集与超集
s1={1,2,3,4,5,6,7,8}
s2={1,2,3,4}
s3={1,2,3,9}

print(s2.issubset(s1))
print(s3.issubset(s1))

运行结果
Python学习——集合
超集

#子集与超集
s1={1,2,3,4,5,6,7,8}
s2={1,2,3,4}
s3={1,2,3,9}

print(s1.issuperset(s2))
print(s1.issuperset(s3))

运行结果
Python学习——集合
(3)判断两个间是否有交集
注意有交集输出结果为false,无交集输出结果为true

#交集
s1={5,6,7,8}
s2={1,2,3,4}
s3={1,2,3,9}

print(s1.isdisjoint(s2))
print(s2.isdisjoint(s3))

运行结果
Python学习——集合
七.集合的数学操作
(1)交集操作

#交集操作
s1={1,2,3,4,5}
s2={3,4,5,6,7}

print(s1.intersection(s2))
print(s1 & s2)

运行结果
Python学习——集合
(2)并集操作

#交集操作
s1={1,2,3,4,5}
s2={3,4,5,6,7}

print(s1.union(s2))
print(s1 | s2)

运行结果
Python学习——集合
(3)差集

#差集
s1={1,2,3,4}
s2={2,3,4,5,6}

print(s1.difference(s2))
print(s1-s2)

print(s2.difference(s1))
print(s2-s1)

运行结果
Python学习——集合
(4)对称差集

#差集
s1={1,2,3,4}
s2={2,3,4,5,6}

print(s1.symmetric_difference(s2))
print(s1^s2)

运行结果
Python学习——集合
八、集合生成式
与列表生成式相似,将列表生成式的方括号改为花括号即可

#集合生成式
s1={i for i in range(10)}
s2={2*i for i in range(10)}
s3={i*i for i in range(10)}
print(s1)
print(s2)
print(s3)

运行结果
Python学习——集合
九、总结
Python学习——集合文章来源地址https://www.toymoban.com/news/detail-505366.html

到了这里,关于Python学习——集合的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python实现刮刮乐(遮罩层也是图片)

    python实现刮刮乐(遮罩层也是图片) python实现刮刮乐效果,与普通刮刮乐有些不同,被刮掉的遮罩层是图片,当其被刮掉后,露下面的图片。在游戏循环中,监听鼠标移动事件,来模拟刮开效果。 效果图  Pygame是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上

    2024年02月06日
    浏览(79)
  • 技术博客官网也是一个不错的学习平台(第411篇)

    OSPF 概念型问题_wx655f0abb3511b的技术博客_51CTO博客 OSPF协议介绍及配置 - airoot - 博客园 (cnblogs.com) 一、 OSPF 概述 回顾一下距离矢量路由协议的工作原理:运行距离矢量路由协议的路由器周期性的泛洪自己的路由表,通过路由的交互,每台路由器都从相邻的路由器学习到路由,并

    2024年02月03日
    浏览(49)
  • Python制作爱心跳动代码,你也是天才程序员

    前端时间电视剧《点燃我,温暖你》正在热播中,里面的天才程序员李峋制作的爱心跳动代码是不是震撼了你的心,今天我们用Python来尝试一下制作爱心跳动代码吧! 怎么说呢,用这个表白也可以的,万一她也看这个剧呢,万一就成了呢 哈哈 冲啊,兄弟们 okok 话不多说,现

    2024年02月09日
    浏览(64)
  • 【Python零基础学习入门篇④】——第四节:Python的列表、元组、集合和字典

    ⬇️⬇️⬇️⬇️⬇️⬇️ ⭐⭐⭐Hello,大家好呀我是陈童学哦,一个普通大一在校生,请大家多多关照呀嘿嘿😁😊😘 🌟🌟🌟 技术这条路固然很艰辛,但既已选择,该当坚毅地走下去,加油! 🌤️PUA: ” 你所看到的惊艳都曾平庸历练 **“**🚀🚀🚀 🍉🍉🍉 最后让我

    2024年02月04日
    浏览(73)
  • C语言——自定义类型结构体_学习笔记

    结构体是一种用户自定义的数据类型,可以包含 多个不同类型的变量 。通过使用结构体,我们可以将相关联的数据组织在一起,便于管理和使用。 在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型的一类。 结构体可以包含多个不同类型的数据成员,例

    2024年02月07日
    浏览(41)
  • 更深层次理解Python的 列表、元组、字典、集合(工作面试学习必需掌握的知识点)

    目录 序列介绍 列表  列表的创建 range()创建整数列表   推导式生成列表

    2024年02月22日
    浏览(46)
  • Python学习笔记_基础篇(六)_Set集合,函数,深入拷贝,浅入拷贝,文件处理

    a、set集合,是一个无序且不重复的元素集合 set b、数据类型模块举例 a、数字和字符串 对于 数字 和 字符串 而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址。 b、其他基本数据类型 对于字典、元祖、列表 而言,进行赋值、浅拷贝和深拷贝时,其内存地

    2024年02月12日
    浏览(41)
  • 【第四阶段】kotlin语言的定义类和field关键字学习

    1.普通成员变量背后隐士代码 为什么在kotlin中是private 可以直接调用,隐式代码如下 val只有get方法 不能set 2.field

    2024年02月07日
    浏览(45)
  • 【教程】MySQL数据库学习笔记(三)——数据定义语言DDL(持续更新)

    写在前面: 如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持! 第一章 《认识与环境搭建》 第二章 《数据类型》 第三章 《数据定义语言DDL》 DDL(Data Definition Language,数据定义语言) 是用于定义和管理数据库对象(如表、视图、索引等

    2024年02月20日
    浏览(46)
  • Python零基础学习7.1—Python自定义函数的定义和调用

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()。但我们也可以自己创建函数来实现一些功能,这被叫做用户自定义函数。 下面来看几个例题: 任务描述 本关

    2024年02月04日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包