Python3基础:集合的使用
Python3集合说明: 用花括号包含没有体现映射关系,即称为集合。
a为字典,而b因为没有映射关系,所以被称为集合。
a = {1:12,2:12,3:13,4:14,5:15,6:16} b = {1,2,3,4,5,6} print(type(a),type(b)) # <class 'dict'> <class 'set'> Python3集合练习 集合天生具备一个功能,就是所有值是唯一的,通俗点也可以理解为去重。
用for循环筛选出重复的内容 f = [1,2,3,4,5,5,3,1,0] temp =[] for each in f:
if each not in temp:
temp.append(each)
print(temp) 用集合去除 e =list(set(f)) Python3集合常见方法: 集合的创建 使用花括号创建 使用set函数创建 集合中数据的访问 因为集合和字典相同都是无序的,所以无法使用下标的方式获取到其内容,但是可以与字典一样可以通过成员操作来获取到数据。
e = [1,2,3,4,5,5,3,1,0] if 10 in e:
print('在')
else:
print('不在')
集合中数据的增加 e = {1, 2, 3, 4, 5} e.add(6) print(e) #{1, 2, 3, 4, 5, 6}
集合中数据的清除 1、remove
移动集合中的一个指定元素,指定元素未包含的集合中,返回KeyError。
2、discard
与remove功能差不多,不同点指定元素未包含的集合中,不报错。
3、pop
移除并返回e中的任意一个元素
4、clear
清除集合中的全部元素
e.remove(5) print(e) #{1, 2, 3, 4, 6}
#e.remove(8) KeyError: 8,未包含8,报错
#丢弃操作,与remove不同是,未包含的内容,不报错
e = {1, 2, 3, 4, 5} e.discard(10) print(e) #{1, 2, 3, 4, 5} e = {1, 2, 3, 4, 5} print(e.pop()) #移除并返回e中的任意一个元素 print(e) e = {1, 2, 3, 4, 5} print(e.clear()) #清楚e中的所有元素 print(e) 不可变集合 e = {1, 2, 3, 4, 5} f = frozenset(e) f.add(10) print(f) # AttributeError: 'frozenset' object has no attribute 'add' update e = {1, 2, 3, 4, 5} g = {'a','b','c',1,2,3} e.update(g)#将g中包含的元素添加到e中 print(e)
intersection_update e = {1, 2, 3, 4, 5} g = {'a','b','c',1,2,3} e.intersection_update(g) #交集修改:g和e包含的相同元素 print(e)
difference_update e = {1, 2, 3, 4, 5} g = {'a','b','c',1,2,3} e.difference_update(g) #差修改:去除e中g包含的元素 print(e)
symmetric_difference_update e = {1, 2, 3, 4, 5} g = {'a','b','c',1,2,3} e.symmetric_difference_update(g) #对称差分修改,e中仅属于e或者g的成员 print(e) 浅拷贝 e = {1, 2, 3, 4, 5} H = e.copycopy() #返回e的一个浅拷贝 print(H)
操作符 e = {1, 2, 3, 4, 5} g = {1, 2, 3} print(e.issubset(g)) # False 测试是否 e 中的每一个元素都在 g 中 print(e <= g) # False print(e.issuperset(g)) # True 测试是否 g 中的每一个元素都在 e 中 print(e >= g) # True print(e.union(g)) # 合并操作:e或g中的元素 print(e | g) # 合并操作:e或g中的元素 print(e.intersection(g)) print(e & g) # 交集操作:e与g中的元素 print(e.difference(g)) # 差分操作:在e中存在,在g不存在 print(e - g) # 差分操作:在e中存在,在g不存在 print(e.symmetric_difference(g)) # 返回一个新的 set 包含 e 和 g 中不重复的元素 print(e ^ g) # 返回一个新的 set 包含 e 和 g 中不重复的元素
- iOS学习——UIView的研究
- iOS学习——布局利器Masonry框架源码深度剖析
- iOS项目——自定义UITabBar与布局
- @FeignClient中的@RequestMapping也被Spring MVC加载的问题解决
- Golang语言中Path包用法
- Golang中container/list包中的坑
- 关于Golang语言数组索引的有趣现象
- Golang不定参数
- Go并发编程基础(译)
- go-concurrent-programming.md
- Go语言并发模型:以并行处理MD5为例
- golang 使用json 包 实现序列化
- 【远古文章】用 Go 语言来看 Android! 出发, Android, 出发!
- Leaf 游戏服务器框架简介
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- MySQL主从复制
- Ansible Jinja2 模板使用
- 自动化运维工具Ansible之Tests测验详解
- 自动化运维工具Ansible之Roles角色详解
- 全网最酷南极路线图
- 误删cloudera-scm-agent恢复
- 自动化运维工具Ansible之LNMP实践环境部署
- 如何在Windows下使用NCL
- Python基础绘图教程(一)
- 如何通过VMware安装Linux CentOS 7.7系统
- HBase入门
- VMware如何克隆一个虚拟机 主机名修改IP地址修改数据目录创建
- Python基础绘图教程(二)
- Docker简介与安装
- python绘图 | 国家气象局开源预报检验库(多图预警)