数据类型之集合 set 运算关系
1.集合 set
用途:关系运算、去重
定义:{ }内用逗号分隔开的多个元素,每个元素都必需是不可变的类型
强调;
1.集合类元素都必需是不可变类型
2.集合内的元素是无序的 ,所以没有索引
3.集合内的元素不能重复
sed={1,2,‘a’}
print(sed={1,2,{“a”:1}}) 直接报错
s={1,'a','hello',(1,2,3),4}
for item in s:
print(item) 每次循环结果顺序错乱
s={(1,2,3),(1,2,3),'a','b','a'}
print(s) 自动删除重复的元素
s=set('hello')
print(s) 顺序错乱
单纯的用集合去重,需要注意的问题是
1 去重的目标所包含的值必须都为不可变类型
2、去重的结果会打乱原来的顺序
常用操作+内置的方法
s1={1,2,3,4,5}
s1.add(6) #集合增加元素
print(s1)
1.长度 len
2.循环 for
3.判断 in 和not in
4. 并集 |
print(pythoners | linuxers) 显示两者索引元素,去除重复的元素
print(pythoners.union(linuxers))
5.交集 &
print(pythoners & linuxers) 显示相同的元素
print(pythoners.intersection(linuxers))
6.差集 -
print(pythoners - linuxers) 删除相同的元素
print(pythoners.difference(linuxers))
7.对称差集 ^
print(pythoners ^ linuxers) 删除相同元素,显示两者的元素
print(pythoners.symmetric_difference(linuxers)
8. 等于 ==
9.父集 (包含关系) > >=
s1={1,2,3,4,5}
s2={1,2,3}
print(s1 > s2) # s1包含s2
print(s1.issuperset(s2)) 判断父集
10.子集 (被包含的关系) < <= isdisjoint判断是否无交集
print(s2.issubset(s1)) 判断子集
print(s1.isdisjoint(s2)) 判断是否无交集
11.更新=增加集合 update 向集合里面增加集合
s1.update({4,7,8,9})
print(s1)
12.删除 remove pop discard
# res=s1.pop()
# print(res)
# res=s1.remove(4)
# print(res)
# print(s1)
s1.discard(7) # 即便要删除的元素不存在也不会报错
二:该类型总结
#1 存一个值or存多个值
可以存多个值,值都必须为不可变类型
# 2 有序or无序
无 序
# 3 可变or不可变
# set集合是可变类型
# s={1,2,3}
# print(id(s))
# s.add(4)
# print(s)
# print(id(s))
#=====================集合的去重==========================
# 单纯的用集合去重,需要注意的问题是
#1、去重的目标所包含的值必须都为不可变类型
#2、去重的结果会打乱原来的顺序
# names=['asb','asb','asb','wsb','wsb','egon_nb',[1,2,3]]
# s=set(names)
# names=list(s) 去重目标必须为不可变类型,
# print(names) 直接报错
转载于:https://www.cnblogs.com/Marcki/p/10111972.html
数据类型之集合 set 运算关系相关推荐
- 离散数学(4)——集合的概念和集合之间的关系、集合的运算、基本的集合恒等式
一.集合的表示 列举法:列出集合中的全体元素,元素之间用逗号分开,然后用花括号括起来 描述法:用谓词P(x)表示x具有性质P,用{x|P(x)}表示具有性质P的集合 注意事项:集合中的元素是各不相同的 ...
- python集合类型中的元素是有序的_Python数据类型之集合set
# 集合:用来存储一个无序的不重复的元素序列 # 集合的标识也是大括号{},中间的元素使用逗号","隔开 # 集合的创建方式: # set(序列) # s = {"123 ...
- 【数据结构】树与树的表示、二叉树存储结构及其遍历、二叉搜索树、平衡二叉树、堆、哈夫曼树与哈夫曼编码、集合及其运算
1.树与树的表示 什么是树? 客观世界中许多事物存在层次关系 人类社会家谱 社会组织结构 图书信息管理 分层次组织在管理上具有更高的效率! 数据管理的基本操作之一:查找(根据某个给定关键字K,从集合R ...
- python集合及其运算
1, 集合定义 集合数据类型是没有顺序的简单对象的聚集,且集合中元素不重复.python集合数据类型有可变集合对象(set)和不可变集合对象(frozenset) 集合元素必须是可hash对象,可哈希 ...
- 离散数学反对称关系_【离散数学】1.2&1.3集合与元素,集合与集合之间的关系...
离散数学是编程人员进阶的必修科目,是计算机专业学生的基础课程之一,多为理论性知识,较抽象. [离散数学]第一章(集合论基础)的小节主要有: 1.1集合的定义和表示 1.2集合与元素的关系 1.3集合与 ...
- collection转换为list_JAVA 集合 接口继承关系和实现,List,Set,Map(总结)
一. JAVA 集合 1.接口继承关系和实现 集合类存放于 Java.util 包中,主要有 3 种:set(集).list(列表包含 Queue)和 map(映射). 1. Collection:C ...
- 【广告技术】隐私集合交集运算结合同态加密,在保障数据安全的同时追踪广告效果
[Wiztalk腾讯广告专场]系列分享来袭,第四期由南开大学计算机学院副院长.网络空间安全学院副院长刘哲理老师为大家深度介绍 <隐私集合交集算法研究>.在不久前由中国国际智能产业博览会组委 ...
- 组合数据类型(集合)
组合数据类型包括集合类型及操作.序列类型及操作(元组类型和列表类型).字典类型及操作 集合是多个元素的无序组合 集合类型与数学中的集合概念一致,数学中的集合是指具有某种特定性质的对象汇总而成的集体,其 ...
- 集合的运算(C++单链表实现)
集合的运算 1.需求分析 2.数据结构与模块化设计 2.1 数据结构设计 2.2 模块化设计 2.3 总体功能流程图 3.程序设计 4.运行展示 1.需求分析 (1)建立两个含有若干个元素的单链表 A ...
- 《离散数学》1 集合及其运算
第一章 集合及其运算 集合的概念 集合的表示方法 集合之间的关系 特殊集合: 集合的基本运算 集合运算的性质 有限集合的计数 集合的概念 通常将一些具有确定的.可以区分的若干事件的全体称为集合,而将这 ...
最新文章
- python入门经典例题-Python入门经典练习题
- Skywalking-11:Skywalking查询协议——案例分析
- c#获取文件夹路径(转载)
- 微信小程序可以实现很多功能
- 解决 npm 无法安装 devDependencies 下的依赖包的问题
- SQL Server 修改表
- ios视频播放器-1
- 二叉树面试题总结(Java)
- android媒体--stagefright概述
- 关于阿狸狗破戒大师自动安装完cadence17.4后licence不可用问题
- 笔记本打开计算机不显示摄像头,笔记本电脑摄像头没有图像怎么回事_笔记本摄像头提示没有图像设备如何处理-win7之家...
- 一个 Duang~ 的CSS3动画
- 想考阿里云ACP认证,网上买题库靠谱吗?
- 如何在苹果Mac OS系统中安装MT4电脑版软件?
- 计算机网络的特点及性能
- 小米随身wif linux平台配置
- 字节跳动校招面试题演练
- 【ESD专题】ESD和EOS有什么差异?
- 嵌入式 C 语言中三块难啃的硬骨头
- latex插入pdf后空很多行
热门文章
- 解决CocosCreator2.3.1使用VideoPlayer加载视频黑屏问题(修改底层代码)
- 游戏开发之C++内联函数--不受程序员控制的一个函数(C++基础)
- CLient-Initiated L2TP主机上网问题详解
- MVVM最佳解读和实践
- 配置IP、网络问题排查
- 《TCP/IP详解卷1:协议》第12章 广播和多播---读书笔记
- 写表单验证等页面的总结
- 【总结】大端、小端存储模式的那点事
- SpringSecurity半成品笔记
- 要有多勇敢才敢对回忆念念不忘,还是喜欢流眼泪。学会成长坚强,相互理解而不是责怪。我安静点,我不哭了~...