浅谈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 相关文章推荐
Python实现对比不同字体中的同一字符的显示效果
Apr 23 Python
浅析Python中的join()方法的使用
May 19 Python
使用python3+xlrd解析Excel的实例
May 04 Python
Python实现账号密码输错三次即锁定功能简单示例
Mar 29 Python
零基础使用Python读写处理Excel表格的方法
May 02 Python
Python实现FM算法解析
Jun 18 Python
wxpython绘制圆角窗体
Nov 18 Python
python输出数组中指定元素的所有索引示例
Dec 06 Python
Pandas实现DataFrame按行求百分数(比例数)
Dec 27 Python
python实现PDF中表格转化为Excel的方法
Jun 16 Python
Django路由层URLconf作用及原理解析
Sep 24 Python
基于python的opencv图像处理实现对斑马线的检测示例
Nov 29 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
根德Grundig S400/S500/S700电路分析
2021/03/02 无线电
Discuz 模板引擎的封装类代码
2008/07/18 PHP
WordPress中用于检索模版的相关PHP函数使用解析
2015/12/15 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
2017/02/04 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
点击button获取text内容并改变样式的js实现
2014/09/09 Javascript
JavaScript中setUTCFullYear()方法的使用简介
2015/06/12 Javascript
js 获取站点应用名的简单实例
2016/08/18 Javascript
JS实现身份证输入框的输入效果
2017/08/21 Javascript
微信小程序开发之IOS和Android兼容的问题
2017/09/26 Javascript
微信小程序中button组件的边框设置的实例详解
2017/09/27 Javascript
微信小程序利用Canvas绘制图片和竖排文字详解
2019/06/25 Javascript
微信小程序拖拽排序列表的示例代码
2020/07/08 Javascript
python检测某个变量是否有定义的方法
2015/05/20 Python
Python Requests 基础入门
2016/04/07 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
python3学习笔记之多进程分布式小例子
2018/02/13 Python
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
python3.6.3+opencv3.3.0实现动态人脸捕获
2018/05/25 Python
Python实现简单查找最长子串功能示例
2019/02/26 Python
在VS2017中用C#调用python脚本的实现
2019/07/31 Python
基于Python中的yield表达式介绍
2019/11/19 Python
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
简单了解python调用其他脚本方法实例
2020/03/26 Python
Python数据正态性检验实现过程
2020/04/18 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
波兰运动鞋网上商店:Distance.pl
2020/07/30 全球购物
.net C#面试题
2012/08/28 面试题
生物化工工艺专业应届生求职信
2013/10/08 职场文书
大学自我鉴定范文
2013/12/26 职场文书
大学学习计划书范文
2014/05/02 职场文书
质量管理标语
2014/06/12 职场文书
2014年机关后勤工作总结
2014/12/16 职场文书
2015年个人实习工作总结
2015/05/28 职场文书
Python机器学习之逻辑回归
2021/05/11 Python
JavaScript实现简单的音乐播放器
2022/08/14 Javascript