python-set()集合操作(创建、添加、删除、交集、并集、差集、对称差集)
来源:互联网 发布:国家授时中心网络时间 编辑:程序博客网 时间:2024/05/17 02:15
set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。set不保证有序。不可以放入可变对象(例如list)作为key,因为可变对象无法判断相等。
创建
要创建一个set,需要提供一个list作为输入集合
>>> s = set([1, 2, 3])>>> s{1, 2, 3}>>> s = set([1, 1, 2, 2, 3, 3])>>> s{1, 2, 3}
或者,直接创建
>>> s = {1, 2, 3}>>> s{1, 2, 3}>>> s = {1, 1, 2, 2, 3, 3}>>> s{1, 2, 3}
添加元素
>>> s.add(4)>>> s{1, 2, 3, 4}# 重复添加不会有效果>>> s.add(4)>>> s{1, 2, 3, 4}
删除元素
>>> s = {1, 2, 3, 4}>>> s.remove(4)>>> s{1, 2, 3}
删除不存在元素会报KeyError
错误
交集
>>> x={1,2,3,4}>>> y={3,4,5,6}>>> x&y{3, 4}# 或>>> x.intersection(y){3, 4}
并集
>>> x={1,2,3,4}>>> y={3,4,5,6}>>> x | y{1, 2, 3, 4, 5, 6}# 或>>> x.union(y){1, 2, 3, 4, 5, 6}
差集
>>> x={1,2,3,4}>>> y={3,4,5,6}# x与y的差集>>> x-y{1, 2}# 或>>> x.difference(y){1, 2}# y与x的差集>>> y-x {5, 6}# 或>>> y.difference(x){5, 6}
对称差集
对称差集就是,有集合a与集合b,a与b的差集跟b与a的差集的并集为对称差集。通俗的说就是[a中存在b中不存在的元素]与[b中存在a中不存在的元素]合起来组成的集合,也就是把ab中相同元素去掉,余下的元素所组成的集合。其实,就是两个集合进行异或操作(相同丢弃,不同保留)。
>>> x={1,2,3,4}>>> y={3,4,5,6}>>> x^y{1, 2, 5, 6}>>> y^x{1, 2, 5, 6}>>> x.symmetric_difference(y){1, 2, 5, 6}>>> y.symmetric_difference(x){1, 2, 5, 6}
集合的子集和超集
>>> xset([1, 2, 3, 4])>>> zset([1, 2, 3])>>> z.issubset(x) # z是x的子集True>>> x.issuperset(z) # x是z的超集True
更多文章:vien.我爱你
阅读全文
0 0
- python-set()集合操作(创建、添加、删除、交集、并集、差集、对称差集)
- python set集合运算(交集,并集,差集,对称差集)
- set算法 (交集,并集,差集,对称差集)
- STL 算法vector/set集合-交集,并集,差集,对称差
- 集合中的(交集,并集,差集,补集,对称差集)
- Python--Python 集合set()添加删除、交集、并集、集合
- 集合类(并集、交集、差集操作)
- python 集合比较(交集、并集,差集)
- python 集合比较(交集、并集,差集)
- python 集合比较(交集、并集,差集)
- python 集合比较(交集、并集,差集)
- JavaScript Set集合的并集,交集,差集
- Java set集合 交集,并集,差集
- STL算法-交集,并集,差集,对称差
- STL算法-交集,并集,差集,对称差
- STL算法-交集,并集,差集,对称差
- Python 集合set添加删除、交集、并集、集合操作符号
- Python 集合set()添加删除、交集、并集、集合操作详解
- git的常规使用方法(iOS版)
- 大型网站架构演化
- solr7搭建搜索服务
- 【C语言】求取第n个斐波那契数的时间复杂度、空间复杂度分析,用三种方式实现(普通递归,循环,优化递归)
- mybatis foreach 出现 there is no getter for property named '__frch_item_0' in 'class
- python-set()集合操作(创建、添加、删除、交集、并集、差集、对称差集)
- 幸运大奖
- express连接数据库、上传图片总结
- mysql 5.7 Transparent PageIO Compression
- 2017哈理工低年级组院赛初赛 D-逃脱 【一个贼墨迹的bfs】
- Surf特征点检测
- 资源之访问Resource(三)
- 分布式缓存Redis之Java客户端
- 输出菱形图案的非对偶做法