python之集合
集合(set),它是一个无序的,不重复的数据组合,它是作用如下:
1、去重,也就是去除重复的内容。有一点值得注意的是:将一个列表(list)变成集合的时候,会自动去重。
2、关系测试。测试数据之间的交、并等关系。
下面,我们用讲解下有关集合的方法操作:
s = set([3,5,9,10]) #创建一个数值集合 t = set("Hello") #创建一个唯一字符的集合 a = t | s # t 和 s的并集,也就是将s和t中的元素放在一起,去掉重复的数据 b = t & s # t 和 s的交集,也就是将s和t共有的数据放在一起 c = t – s # 求差集(数据在t中,但不在s中) d = t ^ s # 对称差集(数据在t或s中,但不会同时出现在二者中,也就是t和s的并集减去t和s的交集) 基本操作: t.add('x') # 添加一项 s.update([10,37,42]) # 在s中添加多项 使用remove()可以删除一项: t.remove('H') #有个问题,那怎么移除重复的数据呢?比如说集合里面两个相同的数字,怎么同时去掉?
'''答案是显然的———————————————————————————————————————————————————————— ---------------------集合中不存在重复的数据!所以也没有这种操作!------------------------'''
len(s)
返回s的长度 x in s
测试 x 是不是 s 的成员,也就是说 x 是不是包含在 s 里面,是的话返回True x not in s
测试 x 是否不是 s 的成员,跟x in s是相反的操作 s.issubset(t)
s <= t
测试是否 s 中的每一个元素都在 t 中,也就是s是不是t的子集 s.issuperset(t)
s >= t
测试是否 t 中的每一个元素都在 s 中 ,也就是s是不是t的父集 s.union(t)
s | t
返回一个新的 set 包含 s 和 t 中的每一个元素,交集 s.intersection(t)
s & t
返回一个新的 set 包含 s 和 t 中的公共元素 ,并集 s.difference(t)
s - t
返回一个新的 set 包含 s 中有但是 t 中没有的元素 ,差集 s.symmetric_difference(t)
s ^ t
返回一个新的 set 包含 s 和 t 中不重复的元素 ,对称差集 s.copy()
返回 集合 s的一个浅复制
今天有关集合的讲解就到这里吧,文中有误的地方敬请读者提出,笔者会尽快改正!谢谢您的支持!
python之集合的更多相关文章
- Python 3 集合基础和概念!
Python 3 集合基础和概念! Python 3中,集合是无序的,所以不能进行切片和索引操作. 创建集合有两个方法:set()方法创建的集合是可变的,可被迭代的:frozenset()方法创建的集 ...
- Python的集合
1. Python的集合 1.1 集合的定义 在Python中, 集合set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset)两种.Python中的集合set类 ...
- Python 操作集合
Python 操作集合 集合,set,主要用于数据的关系测试和去重处理,和列表类似,可以存储数据,列表中可以存储重复的数据,但是如果转化为集合之后,数据就会进行去重,然后保留唯一值:关系测试就是求多个 ...
- Python中集合set()的使用及处理
在Python中集合(set)与字典(dict)比较相似,都具有无序以及元素不能重复的特点 1.创建set 创建set需要一个list或者tuple或者dict作为输入集合 重复的元素在set中会被自 ...
- Python:集合操作总结
集合是一组无序排列的不重复元素集 [注]:集合的最大作用是对一个序列进行去重操作 一.集合的分类 在Python中集合分为两类,为可变集合(set)和不可变集合(frozenset).对于可变集合(s ...
- python 的集合 set()操作
Python 的集合 set(),是一个无序不重复元素集,可以用于关系测试和消除重复元素. 有以下运算: 1.创建一个set ()集合: 2.add:增加集合元素 3.clea ...
- python set集合(16)
在python变量中除了以前文章所提到的整形int / 浮点数float / 布尔值bool / 列表list / 字典dict 之外,还有一个类型我们还没有做详细介绍,这个变量类型就是集合set. ...
- python frozenset集合(17)
在前一篇文章中我们对 python set集合 做了详细的讲解,而本文讲解的 frozenset集合 其实和set集合类似!区别在于frozenset集合不能修改/添加/删除,其他功能和set集合一样 ...
- Python数据类型--集合(set)
Python的集合是无序.可迭代的容器对象,所有元素放在一对大括号中{},元素之间使用逗号隔开,同一集合内的元素具有唯一性,不允许重复. 集合中只能包含数字.字符串.元组等不可变类型的数据,不能包含列 ...
- [python]set集合学习
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...
随机推荐
- 201521123104 《Java程序设计》第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点 1.2 可选:使用常规方法总结其他上课内容. 1.接口不是类,不能使用new进行实例化; 2.接口可以扩展; 3.接口中可以包含 ...
- 201521123070 《JAVA程序设计》第5周学习总结
1. 本章学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. http://naotu.baidu.com/file/02b01f465e125c5942648a03358273b0 2. ...
- 201521123011 《Java程序设计》第1周学习总结
1. 本章学习总结 通过这章的学习让我初步认识了Java,认识到了java和之前c语言的异同点. 对java是面向对象的这句话有了一定了解 认识了jdk,jre,jvm的区别. 2.书面作业 1.为什 ...
- Python3.x 和Python2.x 区别
1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%.Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果.Py3.1性能比Py2.5慢 ...
- Backtrack下的dns爆破工具的目录
直接可以切换到 /pentest/enumeration/dns#
- 201521123026 《java程序设计》 第九周学习总结
1. 本章学习总结 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) PTA提交结果: 运行结果截图: 1.2 ...
- JAVA课程设计--------五子棋
1.团队课程设计博客链接 http://www.cnblogs.com/mz201521044152/p/7065575.html 2.个人负责模块或任务说明 1.重新开始:写一个restartgam ...
- 接口测试入门(5)----新框架重构,使用轻量级的HTTP开发库 Unirest
之前的第一套框架在使用过程中发现存在以下问题: 一. 框架1缺点: 1.登陆的账号每个人写的不一样,一旦用户在测试环境被修改,则导致用例失败 2.每次读取访问网址,需要在同一个java文件下切换测试 ...
- SQL三类语句
1. DDL (Data Definition Language, 数据定义语言) CREATE: 创建数据库和表等对象 DROP: 删除数据库和表等对象 ALTER: 修改数据库和表等对象的结构 2 ...
- 页面设计-数据列表 DataGrid
传统软件项目开发时,针对每个业务单据页面需要每控件一个一个的来设计,同时需要在页面功能中对每个控件的属性进行判定处理,尤其是页面风格布局样式需要花去一大半的时间,并且后续要想修改是非常麻烦繁琐,这样就 ...