Python set常用操作函数集锦


Posted in Python onNovember 15, 2017

定义

set是一个无序且不重复的元素集合。

集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键。集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数(大小), 用 for 循环迭代集合的成员。但是因为集合本身是无序的,不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值。

set和dict一样,只是没有value,相当于dict的key集合,由于dict的key是不重复的,且key是不可变对象因此set也有如下特性:

  1. 不重复
  2. 元素为不可变对象

python提供了常用的数据结构,其中之一就是set,python中的set是不支持索引的、值不能重复、无需插入的容器。

简单记录下set常用的操作函数:

1.新建一个set:

set("Hello"),这样会转成单个字符的值进行插入,结果是'H','e','l','o','l'因为重复只能插入一次。

2.增加一个元素:

add()用于增加一个元素值,

update([]),用于增加多个元素值,参数为list,注意如果用add增加多个值,会报参数类型错误。

3.删除一个元素:

remove()用于删除一个set中的元素,这个值在set中必须存在,如果不存在的话,会引发KeyError错误。

discard()用于删除一个set中的元素,这个值不必一定存在,不存在的情况下删除也不会触发错误。

4.随机删除函数:

set提供了一个pop()函数,这个函数随机返回一个元素值,然后把这个值删除,如果set为空,调用这个函数会返回Key错误。

5.清空函数:

clear(),将set全部清空。

6.测试单个元素在集合内是否存在:

in 或者 not in 如果需要判断一个值在集合内是否存在,in就能满足要求,例如2 in set_num 如果存在则返回True,否则返回False。

7.测试两个集合是否包含,子集操作:

issubset和issuperset,

s1.issubset(s2)  :测试是否 s1 中的每一个元素都在 s2 中,运算符操作为 s1<=s2;

s2.issuperset(s1)  :测试是否 s1 中的每一个元素都在 s2 中,运算符操作为 s1>=s2;//注意是s2调用,参数为s1.

8.集合的并集:

union s1.union(s2)  :返回一个新集合,新集合包含s1,s2的所有元素,等价的运算符为 | 。

9.集合的交集:

intersection,s1.intersection(s2),返回s1和s2中相同部分

10.其他操作:

s1.difference(s2):包含s1中有,但是s2没有的元素的集合。

s1symmetric_difference(s2):包含s1和s2中不相同的元素的集合。

总结

以上所述是小编给大家介绍的Python set常用操作函数集锦,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python线程锁(thread)学习示例
Dec 04 Python
python实现简单温度转换的方法
Mar 13 Python
使用httplib模块来制作Python下HTTP客户端的方法
Jun 19 Python
举例讲解Python中字典的合并值相加与异或对比
Jun 04 Python
Python科学计算之Pandas详解
Jan 15 Python
解决Django数据库makemigrations有变化但是migrate时未变动问题
May 30 Python
python 多线程中子线程和主线程相互通信方法
Nov 09 Python
详解python中的hashlib模块的使用
Apr 22 Python
python opencv 二值化 计算白色像素点的实例
Jul 03 Python
Python实现最常见加密方式详解
Jul 13 Python
Python写出新冠状病毒确诊人数地图的方法
Feb 12 Python
python使用多线程查询数据库的实现示例
Aug 17 Python
python机器学习库常用汇总
Nov 15 #Python
python爬虫系列Selenium定向爬取虎扑篮球图片详解
Nov 15 #Python
给你选择Python语言实现机器学习算法的三大理由
Nov 15 #Python
Python数据结构之顺序表的实现代码示例
Nov 15 #Python
Django中ORM表的创建和增删改查方法示例
Nov 15 #Python
11月编程语言排行榜 Python逆袭C#上升到第4
Nov 15 #Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
Nov 15 #Python
You might like
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
php学习之function的用法
2012/07/14 PHP
PHP正则表达式过滤html标签属性(DEMO)
2016/05/04 PHP
PHP获取星期几的常用方法小结
2018/12/18 PHP
PHP设计模式之观察者模式定义与用法分析
2019/04/04 PHP
如何让PHP编码更加好看利于阅读
2019/05/12 PHP
php获取微信openid方法总结
2019/10/10 PHP
Thinkphp 框架基础之源码获取、环境要求与目录结构分析
2020/04/27 PHP
JS中window.open全屏命令解析及使用示例
2013/12/11 Javascript
jquery mobile动态添加元素之后不能正确渲染解决方法说明
2014/03/05 Javascript
深入理解JavaScript的React框架的原理
2015/07/02 Javascript
JS基于VML技术实现的五角星礼花效果代码
2015/10/26 Javascript
一个仿微博登陆邮箱提示框js开发案例
2016/07/28 Javascript
jquery做个日期选择适用于手机端示例
2017/01/10 Javascript
VUE开发一个图片轮播的组件示例代码
2017/03/06 Javascript
深入理解vue-router之keep-alive
2017/08/31 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
开发Vue树形组件的示例代码
2017/12/21 Javascript
node.js连接mysql与基本用法示例
2019/01/05 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
简单介绍Python中的struct模块
2015/04/28 Python
利用python求解物理学中的双弹簧质能系统详解
2017/09/29 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
python实现的爬取电影下载链接功能示例
2019/08/26 Python
Python 实现大整数乘法算法的示例代码
2019/09/17 Python
python实现画循环圆
2019/11/23 Python
基于OpenCV的路面质量检测的实现
2020/11/04 Python
美国知名男士服饰品牌:Brooks Brothers(布克兄弟)
2016/08/25 全球购物
哈萨克斯坦移动和数字技术在线商店:SatelOnline.kz
2020/09/04 全球购物
四川internet信息高速公路(C#)笔试题
2012/02/29 面试题
财务会计专业应届毕业生求职信
2013/10/18 职场文书
高中生的自我评价
2014/03/04 职场文书
优秀班主任工作总结2015
2015/05/25 职场文书
五年级作文之想象作文
2019/10/30 职场文书
利用python进行数据加载
2021/06/20 Python