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使用面向对象方式创建线程实现12306售票系统
Dec 24 Python
python开发之str.format()用法实例分析
Feb 22 Python
python 中的int()函数怎么用
Oct 17 Python
python实现将文件夹下面的不是以py文件结尾的文件都过滤掉的方法
Oct 21 Python
详解如何减少python内存的消耗
Aug 09 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
Aug 27 Python
python中有关时间日期格式转换问题
Dec 25 Python
Python解析多帧dicom数据详解
Jan 13 Python
Python基于BeautifulSoup爬取京东商品信息
Jun 01 Python
python把一个字符串切开的实例方法
Sep 27 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
python基于openpyxl生成excel文件
Dec 23 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
第十节 抽象方法和抽象类 [10]
2006/10/09 PHP
PHP_Flame(Version:Progress)的原代码
2006/10/09 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
2012/08/22 PHP
46 个非常有用的 PHP 代码片段
2016/02/16 PHP
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
script标签属性用type还是language
2015/01/21 Javascript
JavaScript设计模式学习之“类式继承”
2015/03/12 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
纯JS前端实现分页代码
2016/06/21 Javascript
react-native 圆弧拖动进度条实现的示例代码
2018/04/12 Javascript
深入浅析AngularJs模版与v-bind
2018/07/06 Javascript
vue+axios+element ui 实现全局loading加载示例
2018/09/11 Javascript
jQuery动态生成的元素绑定事件操作实例分析
2019/05/04 jQuery
关于vue3默认把所有onSomething当作v-on事件绑定的思考
2020/05/15 Javascript
vue修改Element的el-table样式的4种方法
2020/09/17 Javascript
在vue中使用eslint,配合vscode的操作
2020/11/09 Javascript
echarts浮动显示单位的实现方法示例
2020/12/04 Javascript
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
Python中的字符串操作和编码Unicode详解
2017/01/18 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
python连接数据库的方法
2017/10/19 Python
Python调用百度根据经纬度查询地址的示例代码
2019/07/07 Python
Django Rest framework三种分页方式详解
2019/07/26 Python
Myprotein加拿大官网:欧洲第一的运动营养品牌
2018/01/06 全球购物
信息管理专业推荐信
2013/10/29 职场文书
感恩母亲节演讲稿
2014/05/07 职场文书
2014优秀大学生简历自我评价
2014/09/15 职场文书
无犯罪记录证明范本
2014/09/15 职场文书
企业愿景口号
2015/12/25 职场文书
Python 制作自动化翻译工具
2021/04/25 Python
nginx请求限制配置方法
2021/07/09 Servers
最新最全的手机号验证正则表达式
2022/02/24 Javascript
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android