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迭代和迭代器
Mar 28 Python
Python随机生成数据后插入到PostgreSQL
Jul 28 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
Jul 18 Python
对python使用telnet实现弱密码登录的方法详解
Jan 26 Python
浅谈Python批处理文件夹中的txt文件
Mar 11 Python
django表单的Widgets使用详解
Jul 22 Python
Pytorch 多块GPU的使用详解
Dec 31 Python
Python如何使用paramiko模块连接linux
Mar 18 Python
基于Python的一个自动录入表格的小程序
Aug 05 Python
Python爬虫中Selenium实现文件上传
Dec 04 Python
Python用Jira库来操作Jira
Dec 28 Python
python 判断字符串当中是否包含字符(str.contain)
Jun 01 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 在windows下配置虚拟目录的方法介绍
2013/06/26 PHP
完美的2个php检测字符串是否是utf-8编码函数分享
2014/07/28 PHP
WordPress中登陆后关闭登陆页面及设置用户不可见栏目
2015/12/31 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
2016/01/08 PHP
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
关于火狐(firefox)及ie下event获取的两种方法
2012/12/27 Javascript
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
jQuery实现字符串按指定长度加入特定内容的方法
2015/03/11 Javascript
JQuery实现的图文自动轮播效果插件
2015/06/19 Javascript
JavaScript中SetInterval与setTimeout的用法详解
2015/11/10 Javascript
浅析创建javascript对象的方法
2016/05/13 Javascript
AngularJS入门教程之Scope(作用域)
2016/07/27 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
详解ES6语法之可迭代协议和迭代器协议
2018/01/13 Javascript
详解使用VueJS开发项目中的兼容问题
2018/08/02 Javascript
Vue中使用clipboard实现复制功能
2018/09/05 Javascript
JavaScript生成一个不重复的ID的方法示例
2019/09/16 Javascript
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
JavaScript的一些小技巧分享
2021/01/06 Javascript
[00:31]DOTA2上海特级锦标赛 Fnatic战队宣传片
2016/03/04 DOTA
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
[29:16]完美世界DOTA2联赛决赛日 Inki vs LBZS 第三场 11.08
2020/11/10 DOTA
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
使用Python的Tornado框架实现一个简单的WebQQ机器人
2015/04/24 Python
Python实现的归并排序算法示例
2017/11/21 Python
Python字典遍历操作实例小结
2019/03/05 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
python求绝对值的三种方法小结
2019/12/04 Python
Python日志syslog使用原理详解
2020/02/18 Python
利用python对excel中一列的时间数据更改格式操作
2020/07/14 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
浅析Python的命名空间与作用域
2020/11/25 Python
解除劳动关系协议书范文
2014/09/11 职场文书
弘扬焦裕禄精神走群众路线思想汇报
2014/09/12 职场文书
2014标准社保办理委托书
2014/10/06 职场文书
本地搭建minio文件服务器(使用bat脚本启动)的方法
2022/07/15 Servers