python set内置函数的具体使用


Posted in Python onJuly 02, 2019

set集合

  • 无序可变
  • 由不同元素组成
  • 其元素必须为可哈希的类型(通俗来说不可变类型)

集合的两种定义方式

  • 使用{} Eg:{1,2,3,4,5}
  • 使用set(可迭代类型)函数

    Eg:set("hello")

  • * 使用frozenset()函数创建不可变集合

基本函数

s = set("hello")

"""
添加一个元素到集合中
"""
s.add('b')

"""
使用可迭代对象更新集合
"""
s.update([1,2,3,4])

"""
清空集合
"""
s.clear()

"""
拷贝集合(浅拷贝)返回拷贝的副本
"""
s.copy()

"""
随机删除一个元素
如果集合为空返回KeyError异常
"""
s = set("hello")
s.pop()

"""
删除指定元素 没有该元素会报错
"""
s.remove('e')

"""
删除指定元素 没有不报错
"""
s.discard('e')

集合交、并、差、交叉补

s1 = {1,2,3,4,5}
s2 = {1,2,3,6,7}

"""
交集
>>> s1.intersection(s2)
{1, 2, 3}
>>> s1&s2
{1, 2, 3}
"""
s1.intersection(s2)
s1&s2

"""
并集
>>> s1.union(s2)
{1, 2, 3, 4, 5, 6, 7}
>>> s1|s2
{1, 2, 3, 4, 5, 6, 7}
"""
s1.union(s2)
s1|s2

"""
差集
>>> s1.difference(s2)
{4, 5}
>>> s1-s2
{4, 5}
"""
s1.difference(s2)
s1-s2


"""
交叉补集(取各自的不同部分)
>>> s1.symmetric_difference(s2)
{4, 5, 6, 7}
"""
s1.symmetric_difference(s2)

"""
其他update函数
"""
s1.difference_update(s2)
s1.intersection_update(s2)
s1.symmetric_difference_update(s2)

is判断函数

s1 = {1,2,3}
s2 = {1,2}

"""
返回两个集合是否有交集
"""
s1.isdisjoint(s2)

"""
返回s1是否为s2子集
"""
s1.issubset(s2)

"""
返回s1是否为s2父集
"""
s1.issuperset(s2)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python获取脚本所在目录的正确方法
Apr 15 Python
Python中的zip函数使用示例
Jan 29 Python
python WindowsError的错误代码详解
Jul 23 Python
python Matplotlib画图之调整字体大小的示例
Nov 20 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
python实现多进程代码示例
Oct 31 Python
解决pycharm的Python console不能调试当前程序的问题
Jan 20 Python
Python基础之循环语句用法示例【for、while循环】
Mar 23 Python
python操作gitlab API过程解析
Dec 27 Python
pycharm实现在虚拟环境中引入别人的项目
Mar 09 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
Apr 20 Python
利用Python优雅的登录校园网
Oct 21 Python
ZABBIX3.2使用python脚本实现监控报表的方法
Jul 02 #Python
浅谈python 中类属性共享的问题
Jul 02 #Python
如何通过Python实现标签云算法
Jul 02 #Python
对python特殊函数 __call__()的使用详解
Jul 02 #Python
对python 调用类属性的方法详解
Jul 02 #Python
python算法题 链表反转详解
Jul 02 #Python
python输入多行字符串的方法总结
Jul 02 #Python
You might like
php通过array_merge()函数合并关联和非关联数组的方法
2015/03/18 PHP
学习php设计模式 php实现备忘录模式(Memento)
2015/12/09 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
PHP中如何使用Redis接管文件存储Session详解
2018/11/28 PHP
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
JavaScript判断变量是对象还是数组的方法
2014/08/28 Javascript
js Object2String方便查看js对象内容
2014/11/24 Javascript
JavaScript中的toLocaleDateString()方法使用简介
2015/06/12 Javascript
JavaScript数据类型学习笔记分享
2016/09/01 Javascript
微信小程序 swiper组件详解及实例代码
2016/10/25 Javascript
详解vue2.0脚手架的webpack 配置文件分析
2017/05/27 Javascript
微信小程序组件 marquee实例详解
2017/06/23 Javascript
node.js基于express使用websocket的方法
2017/11/09 Javascript
详解webpack4多入口、多页面项目构建案例
2018/05/25 Javascript
JS实现简单日历特效
2020/01/03 Javascript
[42:50]NB vs VP 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Flask SQLAlchemy一对一,一对多的使用方法实践
2013/02/10 Python
python网络编程之文件下载实例分析
2015/05/20 Python
python实现八大排序算法(1)
2017/09/14 Python
python+mongodb数据抓取详细介绍
2017/10/25 Python
Python Json序列化与反序列化的示例
2018/01/31 Python
python psutil库安装教程
2018/03/19 Python
python计算日期之间的放假日期
2018/06/05 Python
树莓派用python中的OpenCV输出USB摄像头画面
2019/06/22 Python
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
手工制作的音乐盒:Music Box Attic
2019/09/05 全球购物
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
英国领先的在线高尔夫设备零售商:Golfgeardirect
2020/12/11 全球购物
Nike瑞士官网:Nike CH
2021/01/18 全球购物
介绍一下OSI七层模型
2012/07/03 面试题
中学教师师德师风演讲稿
2014/08/22 职场文书
刑事和解协议书范本
2014/11/19 职场文书
优秀共青团员事迹材料
2014/12/25 职场文书
高中团支书竞选稿
2015/11/21 职场文书
详解Mysql事务并发(脏读、不可重复读、幻读)
2022/04/29 MySQL
windows server2016安装oracle 11g的图文教程
2022/07/15 Servers