python集合类型用法分析


Posted in Python onApril 08, 2015

本文实例分析了python集合类型用法。分享给大家供大家参考。具体分析如下:

python的集合类型和其他语言类似, 是一个无序不重复元素集,我在之前学过的其他的语言好像没有见过这个类型,基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和sysmmetric difference(对称差集)等数学运算,和我们初中数学学的集合的非常的相似。

一、先看下python 集合类型的不重复性,这方面做一些去重处理非常的好,比如我们要处理一些数据,想把重复的数据给
去掉,然后在操作的话,可以把它转换成集合类型,然后在由集合类型转换成其他的类型。

a = [2,3,4,2,1]

我们最终要实现的效果是:

a = [1,2,3,4]

那我们要怎么实现呢。

观察下这个列表,我们发现列表里有重复的元素存在,所以我们第一想到的就是去掉列表里的重复元素。

a = set(a)
print a

集合a的结果是:

set([1, 2, 3, 4])

下一步要实现排序,我们又想到了一个比较简单的方法,因为集合没有排序方法,而列表有排序的方法,所以我们们把它转换成python 列表的类型,调用列表的排序方法。

a = list(a)
a.sort()
print a

列表a的结果是:

[1,2,3,4]

说到集合,也可以说说 python 元组和 python数据类型总结

二、union(联合), intersection(交), difference(差)

a = set('abcde')
b = set('bdcf')

求集合的交集:
a & b
结果是:

set(['c', 'b', 'd'])

求差集:
a - b
结果是:

set(['a', 'e'])

求联合:
a|b
结果是:

set(['a', 'c', 'b', 'e', 'd', 'f'])

总结:python集合和数学的集合概念比较像,经常用在数据的去重处理和一些数据的中转处理。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python常用正则表达式符号浅析
Aug 13 Python
Python的socket模块源码中的一些实现要点分析
Jun 06 Python
Python 比较两个数组的元素的异同方法
Aug 17 Python
从DataFrame中提取出Series或DataFrame对象的方法
Nov 10 Python
Python多进程fork()函数详解
Feb 22 Python
对Django中static(静态)文件详解以及{% static %}标签的使用方法
Jul 28 Python
python统计指定目录内文件的代码行数
Sep 19 Python
Pycharm 安装 idea VIM插件的图文教程详解
Feb 21 Python
Python查找不限层级Json数据中某个key或者value的路径方式
Feb 27 Python
python中可以声明变量类型吗
Jun 18 Python
Python 里最强的地图绘制神器
Mar 01 Python
深入理解pytorch库的dockerfile
Jun 10 Python
在Python中使用Mako模版库的简单教程
Apr 08 #Python
python中requests模块的使用方法
Apr 08 #Python
介绍Python中几个常用的类方法
Apr 08 #Python
python自然语言编码转换模块codecs介绍
Apr 08 #Python
python文件写入实例分析
Apr 08 #Python
python uuid模块使用实例
Apr 08 #Python
Python HTMLParser模块解析html获取url实例
Apr 08 #Python
You might like
PHP 5.0对象模型深度探索之类的静态成员
2008/03/27 PHP
php实现RSA加密类实例
2015/03/26 PHP
基于php实现的php代码加密解密类完整实例
2016/10/12 PHP
PHP实现爬虫爬取图片代码实例
2021/03/03 PHP
Nigma vs Alliance BO5 第一场2.14
2021/03/10 DOTA
对google个性主页的拖拽效果的js的完整注释[转]
2007/04/10 Javascript
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
jQuery ui插件的使用方法代码实例
2013/05/08 Javascript
JavaScript定时器详解及实例
2013/08/01 Javascript
js调试系列 控制台命令行API使用方法
2014/06/18 Javascript
纯JS代码实现气泡效果
2016/05/04 Javascript
对js中回调函数的一些看法
2016/08/29 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
2017/05/02 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
2017/07/10 jQuery
浅谈从React渲染流程分析Diff算法
2018/09/08 Javascript
详解vue-router导航守卫
2019/01/19 Javascript
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
浅谈使用Python内置函数getattr实现分发模式
2018/01/22 Python
Python 批量合并多个txt文件的实例讲解
2018/05/08 Python
python 统计数组中元素出现次数并进行排序的实例
2018/07/02 Python
Python字符串、整数、和浮点型数相互转换实例
2018/08/04 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
python数据批量写入ScrolledText的优化方法
2018/10/11 Python
python 不同方式读取文件速度不同的实例
2018/11/09 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
PyTorch笔记之scatter()函数的使用
2020/02/12 Python
Python逐行读取文件内容的方法总结
2020/02/14 Python
Python常用数据分析模块原理解析
2020/07/20 Python
美国一家著名的手表在线折扣网站:Discount Watch Store
2020/02/24 全球购物
成人大专生实习期的自我评价
2013/10/02 职场文书
财产保全担保书
2015/01/20 职场文书
毕业论文致谢范文
2015/05/14 职场文书
MySQL 使用事件(Events)完成计划任务
2021/05/24 MySQL
go语言中http超时引发的事故解决
2021/06/02 Golang
pytorch 权重weight 与 梯度grad 可视化操作
2021/06/05 Python
JavaScript的Set数据结构详解
2022/02/18 Javascript