浅谈Python 集合(set)类型的操作——并交差


Posted in Python onJune 30, 2016

阅读目录

•介绍
•基本操作
•函数操作

介绍

python的set是一个无序不重复元素集,基本功能包括关系测试和消除重复元素. 集合对象还支持并、交、差、对称差等。

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

基本操作

>>> x = set("jihite")
>>> y = set(['d', 'i', 'm', 'i', 't', 'e'])
>>> x    #把字符串转化为set,去重了
set(['i', 'h', 'j', 'e', 't'])
>>> y
set(['i', 'e', 'm', 'd', 't'])
>>> x & y  #交
set(['i', 'e', 't'])
>>> x | y  #并
set(['e', 'd', 'i', 'h', 'j', 'm', 't'])
>>> x - y  #差
set(['h', 'j'])
>>> y - x
set(['m', 'd'])
>>> x ^ y  #对称差:x和y的交集减去并集
set(['d', 'h', 'j', 'm'])

函数操作

 

>>> x
set(['i', 'h', 'j', 'e', 't'])
>>> s = set("hi")
>>> s
set(['i', 'h'])
>>> len(x)          #长度

>>> 'i' in x
True
>>> s.issubset(x)       #s是否为x的子集
True
>>> y
set(['i', 'e', 'm', 'd', 't'])
>>> x.union(y)        #交
set(['e', 'd', 'i', 'h', 'j', 'm', 't'])
>>> x.intersection(y)     #并
set(['i', 'e', 't'])
>>> x.difference(y)      #差
set(['h', 'j'])
>>> x.symmetric_difference(y) #对称差
set(['d', 'h', 'j', 'm'])
>>> s.update(x)        #更新s,加上x中的元素
>>> s
set(['e', 't', 'i', 'h', 'j'])
>>> s.add(1)         #增加元素
>>> s
set([1, 'e', 't', 'i', 'h', 'j'])
>>> s.remove(1)        #删除已有元素,如果没有会返回异常
>>> s
set(['e', 't', 'i', 'h', 'j'])
>>> s.remove(2)

Traceback (most recent call last):
 File "<pyshell#29>", line 1, in <module>
  s.remove(2)
KeyError: 2
>>> s.discard(2)        #如果存在元素,就删除;没有不报异常
>>> s
set(['e', 't', 'i', 'h', 'j'])
>>> s.clear()         #清除set
>>> s
set([])
>>> x
set(['i', 'h', 'j', 'e', 't'])
>>> x.pop()          #随机删除一元素
'i'
>>> x
set(['h', 'j', 'e', 't'])
>>> x.pop()
'h'

以上这篇浅谈Python 集合(set)类型的操作——并交差就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
精确查找PHP WEBSHELL木马的方法(1)
Apr 12 Python
零基础写python爬虫之爬虫的定义及URL构成
Nov 04 Python
零基础写python爬虫之爬虫框架Scrapy安装配置
Nov 06 Python
老生常谈Python之装饰器、迭代器和生成器
Jul 26 Python
Python简单实现自动删除目录下空文件夹的方法
Aug 29 Python
python清理子进程机制剖析
Nov 23 Python
python做量化投资系列之比特币初始配置
Jan 23 Python
python3.x上post发送json数据
Mar 04 Python
python读取csv和txt数据转换成向量的实例
Feb 12 Python
python RC4加密操作示例【测试可用】
Sep 26 Python
Python合并2个字典成1个新字典的方法(9种)
Dec 19 Python
python matplotlib imshow热图坐标替换/映射实例
Mar 14 Python
python dict.get()和dict['key']的区别详解
Jun 30 #Python
python中set常用操作汇总
Jun 30 #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
You might like
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
PHP实现XML与数据格式进行转换类实例
2015/07/29 PHP
PHP实现简单实用的分页类代码
2016/04/08 PHP
laravel 判断查询数据库返回值的例子
2019/10/11 PHP
判断目标是否是window,document,和拥有tagName的Element的代码
2010/05/31 Javascript
javascript判断iphone/android手机横竖屏模式的函数
2011/12/20 Javascript
javascript的offset、client、scroll使用方法详解
2012/12/25 Javascript
js/jQuery对象互转(快速操作dom元素)
2013/02/04 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
2015/10/09 Javascript
JavaScript常用基础知识强化学习
2015/12/09 Javascript
vue开发调试神器vue-devtools使用详解
2017/07/13 Javascript
JS中原始值和引用值的储存方式示例详解
2018/03/23 Javascript
vue 解决addRoutes动态添加路由后刷新失效问题
2018/07/02 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
vuejs 制作背景淡入淡出切换动画的实例
2018/09/01 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
详细解读Python中解析XML数据的方法
2015/10/15 Python
Python干货:分享Python绘制六种可视化图表
2018/08/27 Python
Django基础知识 URL路由系统详解
2019/07/18 Python
python爬取盘搜的有效链接实现代码
2019/07/20 Python
python实现PID算法及测试的例子
2019/08/08 Python
python-docx文件定位读取过程(尝试替换)
2020/02/13 Python
css3的transform中scale缩放详解
2014/12/08 HTML / CSS
全球酒店比价网:HotelsCombined
2017/06/20 全球购物
Styleonme中文网:韩国高档人气品牌
2017/06/21 全球购物
经典婚礼主持开场白
2014/03/13 职场文书
小学母亲节活动方案
2014/03/14 职场文书
幼儿园保育员责任书
2014/07/22 职场文书
学校交通安全责任书
2014/08/25 职场文书
英语教育专业毕业生求职信
2014/08/28 职场文书
小学生节水倡议书
2015/04/29 职场文书
2016教师给学生的毕业寄语
2015/12/04 职场文书
Python机器学习实战之k-近邻算法的实现
2021/11/27 Python