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 面向对象 成员的访问约束
Dec 23 Python
pandas把dataframe转成Series,改变列中值的类型方法
Apr 10 Python
解决pycharm无法识别本地site-packages的问题
Oct 13 Python
Pycharm以root权限运行脚本的方法
Jan 19 Python
Python学习笔记之视频人脸检测识别实例教程
Mar 06 Python
解决django中ModelForm多表单组合的问题
Jul 18 Python
Python类中方法getitem和getattr详解
Aug 30 Python
numpy.linalg.eig() 计算矩阵特征向量方式
Nov 29 Python
python由已知数组快速生成新数组的方法
Apr 08 Python
python使用多线程查询数据库的实现示例
Aug 17 Python
详解pycharm自动import所需的库的操作方法
Nov 30 Python
python实现三次密码验证的示例
Apr 29 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大转盘中奖概率算法实例
2014/10/21 PHP
php随机抽奖实例分析
2015/03/04 PHP
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
2017/01/19 PHP
thinkPHP5.0框架独立配置与动态配置方法
2017/03/17 PHP
PHP实现阿里大鱼短信验证的实例代码
2017/07/10 PHP
PHP Swoole异步MySQL客户端实现方法示例
2019/10/24 PHP
jQuery生成asp.net服务器控件的代码
2010/02/04 Javascript
分享20多个很棒的jQuery 文件上传插件或教程
2011/09/04 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
JavaScript如何实现对数字保留两位小数一位自动补零
2015/12/18 Javascript
js实现的页面加载完毕之前loading提示效果完整示例【附demo源码下载】
2016/08/02 Javascript
axios 处理 302 状态码的解决方法
2018/04/10 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
angular.js实现列表orderby排序的方法
2018/10/02 Javascript
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
Python爬虫框架Scrapy安装使用步骤
2014/04/01 Python
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
Python中函数参数设置及使用的学习笔记
2016/05/03 Python
Python的Flask框架中的Jinja2模板引擎学习教程
2016/06/30 Python
浅谈python中的__init__、__new__和__call__方法
2017/07/18 Python
python如何保证输入键入数字的方法
2019/08/23 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
分享8点超级有用的Python编程建议(推荐)
2019/10/13 Python
解决Python二维数组赋值问题
2019/11/28 Python
Python3 全自动更新已安装的模块实现
2020/01/06 Python
python实现快递价格查询系统
2020/03/03 Python
不到20行实现Python代码即可制作精美证件照
2020/04/24 Python
Css3+Js制作漂亮时钟(附源码)
2013/04/24 HTML / CSS
HTML5公共页面提取作为公用代码的方法
2020/06/30 HTML / CSS
CK巴西官方网站:Calvin Klein巴西
2019/07/19 全球购物
Perfume’s Club英国官网:购买香水和护肤品
2019/11/02 全球购物
《九寨沟》教学反思
2014/04/08 职场文书
客户答谢会致辞
2015/07/30 职场文书
浅谈怎么给Python添加类型标注
2021/06/08 Python
Go语言的协程上下文的几个方法和用法
2022/04/11 Golang