关系测试# 或 print(s2-s)Python 集合
1集合是一个无序的,不重复的数据组合,它的主要作用如下(set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key):
去重,把一个列表变成集合,就自动去重了
关系测试,测试两组数据之前的交集、差集、并集等关系
2(去重)
# -*- coding:utf-8 -*-
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
print(type(s))
print(s)
输出结果:
<class 'set'>
{1, 2, 3, 4, 5, 'tin', 12, ('tj', 120)}
(关系测试)
交集:
# -*- coding:utf-8 -*-
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
#交集,把相同的元素取出来
print(s2.intersecti(s)) #或 print(s2 & s)
输出结果:
{4, 5}
并集
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,} #并集
print(s2.union(s)) #或 print(s2 | s)
输出结果:
{1, 2, 3, 4, 5, 6, 7, 8, ('tj', 120), 12, 'tin', 23, 123}
差集
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,} #差集
print(s2.difference(s)) # 或 print(s2-s)
输出结果:
{6, 7, 8, 23, 123}
对称差集
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
print(s2.symmetric_difference(s)) #或 print(s2 ^ s)
输入结果:
{1, 2, 3, 6, 7, 8, 12, 'tin', 23, ('tj', 120), 123}
随机删除元素:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
print(s2.pop()) #pop 随机删除元素
输出结果:4
删除元素(可以任意删除一项):
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
输出结果:
{1, 3, 4, 5, 'tin', 12, ('tj', 120)}
父集:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
print(s2.issuperset(s))
输出结果:
{1, 3, 4, 5, 12, ('tj', 120), 'tin'}
False
子集:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
print(s2.issubset(s))
输出结果:
{1, 3, 4, 5, 'tin', 12, ('tj', 120)}
False
对称并集:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.remove(2)
print(s)
s2.difference_update(s)
print(s2)
输出结果:
{'tin', 1, 3, 4, 5, ('tj', 120), 12}
{6, 7, 8, 23, 123}
添加元素:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s2.add(18)
print(s2)
s.add(21)
print(s)
输出结果:
{4, 5, 6, 7, 8, 18, 23, 123}
{('tj', 120), 1, 2, 3, 4, 5, 12, 'tin', 21}
合并多项元素:
s={1,2,3,4,5,1,2,12,"tin",("tj",120),"tin",("tj",120)}
s2={123,23,4,5,6,7,8,}
s.update(s2)
print(s)
输出结果:
{1, 2, 3, 4, 5, 6, 7, 8, 12, 23, 'tin', 123, ('tj', 120)}
关系测试# 或 print(s2-s)Python 集合的更多相关文章
- python集合类型
集合类型简介 集合也是容器,其内元素都是无序.唯一.不可变的.它常用来做成员测试.移除重复数据.数据计算(比如交集.并集.差集). 集合Set是dict的无value版.集合也使用大括号包围: > ...
- Python 集合set添加删除、交集、并集、集合操作符号
在Python中集合set是基本数据类型的一种,它有可变集合(set)和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法. 1. ...
- python 全栈开发,Day7(元组转换,列表以及字典的坑,集合,关系测试,深浅copy,编码补充)
一.元组转换 数字 tu = (1) tu1 = (1,) print(tu,type(tu)) print(tu1,type(tu1)) 执行输出: 1 <class 'int'>(1, ...
- python语言(二)列表、字典、集合、文件读写、关系测试
1.列表 list 代码 s = '王宇建,苏红,邹存才...' # 列表 数字 list l = ['王宇建','苏红','邹存才'] # 一维数组 二维数组 三维数组 # 0 1 2 # 索引 ...
- Python 集合的各种操作 数学运算 关系操作 增删改查 生成式
# 集合是无序的 是可变的 不能重复 允许数学运算 分散存储 # 创建# collegel = {'哲学','经济学','法学','教育学'}## # {'教育学', '经济学', '法学', '哲学 ...
- Python 集合(set)使用
1.python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差 ...
- python 集合set
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...
- python 集合相关操作
集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...
- python集合相关操作
集合相关操作 集合是一个无序的,不重复的数据组合,它有着两个主要作用:去重以及关系测试. 去重指的是当把一个列表变成了集合,其中重复的内容就自动的被去掉了 关系测试指的是,测试两组数据之间的交集.差集 ...
随机推荐
- spring boot 的热部署插件
- 三,APIView、GenericAPIView、Mixins总结
概述 APIView是DRF的视图层中最基本的类,它相当于Django中的View类,其他视图类都是通过继承APIView实现的. GenericAPIView继承于APIView,在其父类的基础上为 ...
- git 分支合并develop 重新拉取
1.本地包 zb-local 上传到对应的线上分支 zb-online cd 进入本地所在文件夹,然后执行下面三项 git add . git commit -m '修改' git push 或者 ...
- js基础-基本包装类型
var t = 13; t.toString(); //t是一个简单数值类型 现在有了方法 toString 对象类型的方法 //数值类型有对应的包装类型 var t1 =new Number(333 ...
- Redis服务器开启远程访问
重启 ps aux|grep redis root 32684 0.0 0.0 48452 6944 ? Ssl 21:27 0:00 ./redis-server *:6379 kill了这个进程 ...
- eclipse egit(版本回退)
在公司一年多了,用到的项目都是用svn代码托管,没有git 的用武之地,趁国庆假期稍微自学了一下,然后人比较懒,不愿用原生敲命令行的形式,就在eclipse上学学怎么用git,话说回来用了svn再来学 ...
- 针对SO交期回写的工厂日历功能调整
针对所有SO回写的交期,在最终写入SAP系统时,如果交期落在周日的,则自动往后延迟一天到周一,前期已经开发的长节假日UI维护的功能不变(按照UI的开始和结束时间跳过此段时间不规划). 当加1天时落在国 ...
- Camstar :新加的modeling对象没有在 modeling的下拉框中显示
解决: 对象的maint 的 advance option client ui 要打上勾.
- C语言标准io函数总结
转自:http://blog.csdn.net/sun_top/article/details/4235992本来是在vscode上用markdown排好版的,结果复制到这上面就变了形,无奈. 函数列 ...
- vue element-ui怎样提炼一个自己写的js当作公共js
vue element-ui怎样提炼一个自己写的js当作公共js请教一下各位大神,我刚刚触摸vue element-ui几天,写的一个清晰检索的input框,现在需当作项目公共的部分,可遭需的html ...