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中的关键字“with”与上下文管理器
Apr 21 Python
python扫描proxy并获取可用代理ip的实例
Aug 07 Python
详解Python的hasattr() getattr() setattr() 函数使用方法
Jul 09 Python
Python根据当前日期取去年同星期日期
Apr 14 Python
在Python中使用MySQL--PyMySQL的基本使用方法
Nov 19 Python
Pytorch之contiguous的用法
Dec 31 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
在keras中对单一输入图像进行预测并返回预测结果操作
Jul 09 Python
PyCharm2019 安装和配置教程详解附激活码
Jul 31 Python
python实现ping命令小程序
Dec 28 Python
Python基础详解之邮件处理
Apr 28 Python
Python如何识别银行卡卡号?
Jun 10 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
DC宇宙的第一个英雄,堪称动漫史鼻祖,如今成为美国文化的象征
2020/04/09 欧美动漫
图象函数中的中文显示
2006/10/09 PHP
PHP中常用的输出函数总结
2014/09/22 PHP
飞鱼(shqlsl) javascript作品集
2006/12/16 Javascript
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
jQuery匹配文档链接并添加class的方法
2015/06/26 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
js 将图片连接转换成base64格式的简单实例
2016/08/10 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
node.js中http模块和url模块的简单介绍
2017/10/06 Javascript
vue-router中的hash和history两种模式的区别
2018/07/17 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
vue a标签点击实现赋值方式
2020/09/07 Javascript
Python深入学习之对象的属性
2014/08/31 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
Python开发中爬虫使用代理proxy抓取网页的方法示例
2017/09/26 Python
Python3.7实现中控考勤机自动连接
2018/08/28 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
python如何发布自已pip项目的方法步骤
2018/10/09 Python
Python:二维列表下标互换方式(矩阵转置)
2019/12/02 Python
详解CSS3 rem(设置字体大小) 教程
2017/11/21 HTML / CSS
HTML5拍照和摄像机功能实战详解
2019/01/24 HTML / CSS
韩都衣舍天猫官方旗舰店:天猫女装销售总冠军
2017/10/10 全球购物
英国游戏机和游戏购物网站:365games.co.uk
2018/06/18 全球购物
俄罗斯宠物用品网上商店:ZooMag
2019/12/12 全球购物
招商业务员岗位职责
2013/12/16 职场文书
农村婚礼证婚词
2014/01/08 职场文书
《花木兰》教学反思
2014/04/09 职场文书
毕业生就业协议书
2014/04/11 职场文书
原料仓管员岗位职责
2014/04/12 职场文书
检察机关个人对照检查材料
2014/09/15 职场文书
求职意向书范本
2015/05/11 职场文书
高中家长意见怎么写
2015/06/03 职场文书
为什么node.js不适合大型项目
2021/04/28 Javascript
golang 实现Location跳转方式
2021/05/02 Golang
Python OpenCV之常用滤波器使用详解
2022/04/07 Python