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 13 Python
python操作CouchDB的方法
Oct 08 Python
Python中使用Inotify监控文件实例
Feb 14 Python
python相似模块用例
Mar 04 Python
使用Mixin设计模式进行Python编程的方法讲解
Jun 21 Python
快速实现基于Python的微信聊天机器人示例代码
Mar 03 Python
Python统计纯文本文件中英文单词出现个数的方法总结【测试可用】
Jul 25 Python
Django中多种重定向方法使用详解
Jul 17 Python
对Python 字典元素进行删除的方法
Jul 31 Python
浅析python字符串前加r、f、u、l 的区别
Jan 24 Python
Jupyter notebook 输出部分显示不全的解决方案
Apr 24 Python
Python OpenCV之常用滤波器使用详解
Apr 07 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/04/08 PHP
PHP使用CURL_MULTI实现多线程采集的例子
2014/07/29 PHP
PHPExcel实现表格导出功能示例【带有多个工作sheet】
2018/06/13 PHP
为超链接加上disabled后的故事
2010/12/10 Javascript
Javascript实现重力弹跳拖拽运动效果示例
2013/06/28 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
node.js下LDAP查询实例分享
2015/09/30 Javascript
AngularJS基础 ng-list 指令详解及示例代码
2016/08/02 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
微信js-sdk地理位置接口用法示例
2016/10/12 Javascript
浅析JS中常用类型转换及运算符表达式
2017/07/23 Javascript
js注册时输入合法性验证方法
2017/10/21 Javascript
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
从零开始实现Vue简单的Toast插件
2018/12/03 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
详解Nuxt.js中使用Element-UI填坑
2019/09/06 Javascript
基于JavaScript 实现拖放功能
2019/09/12 Javascript
使用python解析xml成对应的html示例分享
2014/04/02 Python
Python实现PS滤镜的万花筒效果示例
2018/01/23 Python
windows下pycharm安装、创建文件、配置默认模板
2018/07/31 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
详解numpy的argmax的具体使用
2019/05/27 Python
python sorted函数的小练习及解答
2019/09/18 Python
python之openpyxl模块的安装和基本用法(excel管理)
2021/02/03 Python
新媒传信软件测试面试题
2013/02/24 面试题
涉外文秘个人求职的自我评价
2013/10/07 职场文书
争论的故事教学反思
2014/02/06 职场文书
汉语言文学专业自荐信
2014/06/11 职场文书
学校学习雷锋活动总结
2014/07/03 职场文书
社区四风存在问题及整改措施
2014/10/26 职场文书
大学新生入学感想
2015/08/07 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL
Java新手教程之ArrayList的基本使用
2021/06/20 Java/Android
微信小程序结合ThinkPHP5授权登陆后获取手机号
2021/11/23 PHP