浅谈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实现目录树生成示例
Mar 28 Python
python统计一个文本中重复行数的方法
Nov 19 Python
python对json的相关操作实例详解
Jan 04 Python
详解Python使用tensorflow入门指南
Feb 09 Python
pycharm重置设置,恢复默认设置的方法
Oct 22 Python
Django如何开发简单的查询接口详解
May 17 Python
Python_查看sqlite3表结构,查询语句的示例代码
Jul 17 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
Aug 12 Python
python修改FTP服务器上的文件名
Sep 11 Python
详解Python3中的 input() 函数
Mar 18 Python
python 常用日期处理-- datetime 模块的使用
Sep 02 Python
在pycharm创建scrapy项目的实现步骤
Dec 01 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
php strtotime 函数UNIX时间戳
2009/01/14 PHP
php报表之jpgraph柱状图实例代码
2011/08/22 PHP
PHP中extract()函数的定义和用法
2012/08/17 PHP
单台服务器的PHP进程之间实现共享内存的方法
2014/06/13 PHP
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
javascript之Partial Application学习
2013/01/10 Javascript
JavaScript cookie的设置获取删除详解
2014/02/11 Javascript
jquery 取子节点及当前节点属性值的方法
2014/08/24 Javascript
jQuery中next()方法用法实例
2015/01/07 Javascript
ECMAScript6中Set/WeakSet详解
2015/06/12 Javascript
jQuery Validation PlugIn的使用方法详解
2015/12/18 Javascript
js 实现复选框只能选择一项的示例代码
2018/01/23 Javascript
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
浅析Vue中拆分视图层代码的5点建议
2019/08/15 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
2020/02/28 Javascript
JS实现手风琴特效
2020/11/08 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
从零学python系列之新版本导入httplib模块报ImportError解决方案
2014/05/23 Python
Python计算程序运行时间的方法
2014/12/13 Python
Python while 循环使用的简单实例
2016/06/08 Python
Python3.6简单的操作Mysql数据库的三个实例
2018/10/17 Python
对python中的*args与**kwgs的含义与作用详解
2019/08/28 Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
2019/11/06 Python
python 实现二维字典的键值合并等函数
2019/12/06 Python
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
美国床垫连锁店:Mattress Firm
2021/02/13 全球购物
证券期货行业个人的自我评价
2013/12/26 职场文书
甜点店创业计划书
2014/01/27 职场文书
司机检讨书
2014/02/13 职场文书
创先争优活动党员公开承诺书
2014/08/29 职场文书
个人职业及收入证明
2014/10/13 职场文书
离婚协议书范文2014(夫妻感情破裂)
2014/12/14 职场文书
2014年标准化工作总结
2014/12/17 职场文书
二年级学生期末评语
2014/12/26 职场文书
建议书的格式及范文
2015/09/14 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书