python中set常用操作汇总


Posted in Python onJune 30, 2016

sets 支持 x in set, len(set),和 for x in set。作为一个无序的集合,sets不记录元素位置或者插入点。因此,sets不支持 indexing, slicing, 或其它类序列(sequence-like)的操作。 

下面我们通过几个例子,来简单说明下

常用操作1

In [2]: a = set() 
 
In [3]: a
Out[3]: set()
 
In [4]: type(a)
Out[4]: set
 
In [5]: b = set([1, 3])
 
In [6]: b
Out[6]: {1, 3}
 
In [7]: type(b)
Out[7]: set
 
In [8]: b.update(2)
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-8-d51e2fe4c50a> in <module>()
----> 1 b.update(2)
 
TypeError: 'int' object is not iterable
 
In [9]: b.update({2})
 
In [10]: b
Out[10]: {1, 2, 3}
 
In [11]: b.update([4])
 
In [12]: b
Out[12]: {1, 2, 3, 4}
 
In [13]: a.di
a.difference     a.difference_update a.discard
 
In [13]: a.dif
a.difference     a.difference_update
 
In [13]: a.difference(b)
Out[13]: set()
 
In [14]: a
Out[14]: set()
 
In [15]: b.difference(a)
Out[15]: {1, 2, 3, 4}
 
In [16]:

常用操作2

In [16]: a.add({1, 3})
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-16-98cdf4d0875e> in <module>()
----> 1 a.add({1, 3})
 
TypeError: unhashable type: 'set'
 
In [17]: a.add(4)
 
In [18]: a
Out[18]: {4}
 
In [19]: a.issu
a.issubset  a.issuperset
 
In [19]: a.issubset(b)
Out[19]: True
 
In [20]: a.remove(4)
 
In [21]: a
Out[21]: set()
 
In [22]: a.union(b)
Out[22]: {1, 2, 3, 4}
 
In [23]: a
Out[23]: set()
 
In [24]: b
Out[24]: {1, 2, 3, 4}
 
In [25]: b.pop()
Out[25]: 1
 
In [26]: a.copy(b)
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-26-9e8a5f057ffd> in <module>()
----> 1 a.copy(b)
 
TypeError: copy() takes no arguments (1 given)
 
In [27]: a.copy()
Out[27]: set()
 
In [28]: c = a.copy()
 
In [29]: c
Out[29]: set()
 
In [30]: a
Out[30]: set()
 
In [31]: a.add({234})
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-31-6073e02d68a9> in <module>()
----> 1 a.add({234})
 
TypeError: unhashable type: 'set'
 
In [32]: a.add(234)
 
In [33]: c
Out[33]: set()
 
In [34]: a
Out[34]: {234}

常用操作3

In [35]: a.clear()
 
In [36]: a
Out[36]: set()
 
In [39]: a = {1}
 
In [40]: b = {1, 2}
 
In [41]: a.intersection(b)
Out[41]: {1}
 
In [43]: a
Out[43]: {1}
 
In [44]: b = {1, 2, 3}
 
In [45]: a.union(b)
Out[45]: {1, 2, 3}
 
In [45]: a.union(b)
Out[45]: {1, 2, 3}
 
In [46]: a & b
Out[46]: {1}
 
In [47]: a ^ b
Out[47]: {2, 3}
 
In [48]: a - b
Out[48]: set()
 
In [49]: b - a
Out[49]: {2, 3}

In [50]: a > b
Out[50]: False
 
In [51]: b > a
Out[51]: True
 
In [52]: a == b
Out[52]: False
 
In [53]: a != b
Out[53]: True
Python 相关文章推荐
详细探究Python中的字典容器
Apr 14 Python
Python 多核并行计算的示例代码
Nov 07 Python
Python实现的计算马氏距离算法示例
Apr 03 Python
python多线程分块读取文件
Aug 29 Python
Python 图像对比度增强的几种方法(小结)
Sep 25 Python
Python运行提示缺少模块问题解决方案
Apr 02 Python
python小白切忌乱用表达式
May 29 Python
Python过滤序列元素的方法
Jul 31 Python
python,Java,JavaScript实现indexOf
Sep 09 Python
python cv2图像质量压缩的算法示例
Jun 04 Python
linux中nohup和后台运行进程查看及终止
Jun 24 Python
python三子棋游戏
May 04 Python
浅谈python中set使用
Jun 30 #Python
详解Python操作RabbitMQ服务器消息队列的远程结果返回
Jun 30 #Python
Python操作RabbitMQ服务器实现消息队列的路由功能
Jun 29 #Python
Python通过RabbitMQ服务器实现交换机功能的实例教程
Jun 29 #Python
Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程
Jun 29 #Python
Python的消息队列包SnakeMQ使用初探
Jun 29 #Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
Jun 29 #Python
You might like
PHP中HTML标签过滤技巧
2014/01/07 PHP
帮助避免错误的Javascript陷阱清单
2009/05/31 Javascript
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
jQuery LigerUI 使用教程入门篇
2012/01/18 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
javascript Deferred和递归次数限制实例
2014/10/21 Javascript
node.js中的querystring.escape方法使用说明
2014/12/10 Javascript
JavaScript  event对象整理及详细介绍
2016/10/10 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
详解js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
2017/01/09 Javascript
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
JavaScript基于对象方法实现数组去重及排序操作示例
2018/07/10 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
JS解惑之Object中的key是有序的么
2019/05/06 Javascript
vue-cli随机生成port源码的方法
2019/09/02 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
原生js拖拽实现图形伸缩效果
2020/02/10 Javascript
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
[56:46]Liquid vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python中使用sys模板和logging模块获取行号和函数名的方法
2014/04/15 Python
python3.5绘制随机漫步图
2018/08/27 Python
python-opencv 将连续图片写成视频格式的方法
2019/01/08 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
利用Python中的Xpath实现一个在线汇率转换器
2020/09/09 Python
纯css3实现鼠标经过图片显示描述的动画效果
2014/09/01 HTML / CSS
html5超简单的localStorage实现记住密码的功能实现
2017/09/07 HTML / CSS
生物技术研究生自荐信
2013/11/12 职场文书
高三毕业典礼主持词
2014/03/27 职场文书
优秀教师演讲稿
2014/05/06 职场文书
团结演讲稿范文
2014/05/23 职场文书
教师批评与自我批评(群众路线)
2014/10/15 职场文书
vue Element-ui表格实现树形结构表格
2021/06/07 Vue.js
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android