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程序运行效率的6个方法
Mar 31 Python
Python中random模块用法实例分析
May 19 Python
Python设计实现的计算器功能完整实例
Aug 18 Python
python中lambda()的用法
Nov 16 Python
Python实现端口检测的方法
Jul 24 Python
Python多线程原理与用法实例剖析
Jan 22 Python
Python3实现取图片中特定的像素替换指定的颜色示例
Jan 24 Python
Python 复平面绘图实例
Nov 21 Python
Python使用plt.boxplot() 参数绘制箱线图
Jun 04 Python
Django配置跨域并开发测试接口
Nov 04 Python
Python监听键盘和鼠标事件的示例代码
Nov 18 Python
Python数据分析之pandas函数详解
Apr 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的webservice的wsdl的XML无法显示问题的解决方法
2014/03/11 PHP
javascript 学习笔记(onchange等)
2010/11/14 Javascript
深入理解JavaScript系列(14) 作用域链介绍(Scope Chain)
2012/04/12 Javascript
JS显示日历和天气的方法
2016/03/01 Javascript
js精准的倒计时函数分享
2016/06/29 Javascript
jQuery progressbar通过Ajax请求实现后台进度实时功能
2016/10/11 Javascript
详解如何在NodeJS项目中优雅的使用ES6
2017/04/22 NodeJs
vue学习笔记之vue1.0和vue2.0的区别介绍
2017/05/17 Javascript
Vue resource中的GET与POST请求的实例代码
2017/07/21 Javascript
详解vue-cli项目中怎么使用mock数据
2018/05/29 Javascript
Vuex入门到上手教程
2018/06/20 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
深入理解vue-class-component源码阅读
2019/02/18 Javascript
如何基于js判断浏览器版本
2020/02/20 Javascript
[00:43]FTP典藏礼包 DOTA2三大英雄霸气新套装
2014/03/21 DOTA
[01:34]2014DOTA2 TI预选赛预选赛 选手比赛房大揭秘!
2014/05/20 DOTA
python调用cmd复制文件代码分享
2013/12/27 Python
python列表操作之extend和append的区别实例分析
2015/07/28 Python
Python编程之event对象的用法实例分析
2017/03/23 Python
Python callable()函数用法实例分析
2018/03/17 Python
Python实现批量执行同目录下的py文件方法
2019/01/11 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
2020/02/27 Python
PyQt5中向单元格添加控件的方法示例
2020/03/24 Python
django和flask哪个值得研究学习
2020/07/31 Python
Hotels.com中国区:好订网
2016/08/18 全球购物
爱尔兰橄榄球店:Irish Rugby Store
2019/12/05 全球购物
软件测试题目
2013/02/27 面试题
汽车技术服务与营销专业推荐信
2013/11/29 职场文书
求职信范文怎么写
2014/01/29 职场文书
成龙洗发水广告词
2014/03/14 职场文书
建筑工程专业大学生求职信
2014/04/23 职场文书
公司周年庆典策划方案
2014/05/17 职场文书
小学标准化建设汇报材料
2014/08/16 职场文书
教师师德师风自我剖析材料
2014/09/29 职场文书
利用python进行数据加载
2021/06/20 Python
实例详解Python的进程,线程和协程
2022/03/13 Python