Python基础数据类型之set集合
Python基础数据类型之set集合
- 一、set数据类型介绍
- 二、set集合演示
- 三、set集合中hash介绍
- 1.哈希定义
- 2.数据类型的hash和不可hash
- 3.set中hash示例
- 四、set集合的插入
- 1.创建空集合
- 2.set集合插入
- 五、set集合的删除
- 六、set集合的修改
- 七、set的查询
- 八、交集、并集、差集
- 九、set的去重作用
一、set数据类型介绍
set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
二、set集合演示
# set集合-数据类型
m = {}
print(type(m)) # {}内为空时数据类型为字典
s = {1,2,3,3,4,"张三"}
print(s)
print(type(s)) # set集合的元素是无序的打印出来
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
<class 'dict'>
{1, 2, 3, 4, '张三'}
<class 'set'>Process finished with exit code 0
三、set集合中hash介绍
1.哈希定义
Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。
2.数据类型的hash和不可hash
①不可哈希:python中的set集合进行数据存储的时候,需要对这些数据进行哈希计算,根据计算出的哈希值进行存储。
②可哈希的:不可变的数据类型,int, str , tuple, bool,
③不可哈希的:可变得数据类型,list,dict, set
3.set中hash示例
s = {1,2,3,3,4,"张三", []}
# print(s)
# print(type(s))
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
Traceback (most recent call last):File "D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py", line 17, in <module>s = {1,2,3,3,4,"张三", []}
TypeError: unhashable type: 'list'Process finished with exit code 1
四、set集合的插入
1.创建空集合
# s = set() # 创建空集合
# l = list()
# t = tuple()
# s = str()
2.set集合插入
s.add("张辽")
s.add("许诸")
s.add("赵云")
s.add("陆逊")
print(s)
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
{'陆逊', '张辽', '赵云', '许诸'}Process finished with exit code 0
五、set集合的删除
s.add("张辽")
s.add("许诸")
s.add("赵云")
s.add("陆逊")
print(s)s.remove("张辽")
print(s)
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
{'赵云', '陆逊', '张辽', '许诸'}
{'赵云', '陆逊', '许诸'}Process finished with exit code 0
六、set集合的修改
s.add("张辽")
s.add("许诸")
s.add("赵云")
s.add("陆逊")
print(s)# s.remove("张辽")
# print(s)# 想要修改,先删除,在新增
s.remove("张辽")
s.add("孙尚香")
print(s)
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
{'赵云', '陆逊', '许诸', '张辽'}
{'赵云', '陆逊', '孙尚香', '许诸'}Process finished with exit code 0
七、set的查询
s.add("张辽")
s.add("许诸")
s.add("赵云")
s.add("陆逊")
print(s)for item in s:print(item)
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
{'张辽', '陆逊', '赵云', '许诸'}
张辽
陆逊
赵云
许诸Process finished with exit code 0
八、交集、并集、差集
s1 = {"python", "shell", "ansible","ruby"}
s2 = {"zabbix", "linux", "shell", "nginx"}print(s1 & s2) #交集
print(s1.intersection(s2))
print(s1 | s2) # 并集
print(s1.union(s2))print(s1 - s2) # 差集
print(s1.difference(s2))
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
{'shell'}
{'shell'}
{'nginx', 'linux', 'python', 'zabbix', 'shell', 'ruby', 'ansible'}
{'nginx', 'linux', 'python', 'zabbix', 'shell', 'ruby', 'ansible'}
{'ruby', 'python', 'ansible'}
{'ruby', 'python', 'ansible'}Process finished with exit code 0
九、set的去重作用
s1 = {"python", "shell", "ansible","ruby"}
s2 = {}
l = ["zabbix", "linux", "shell", "nginx""zabbix", "linux", "shell","nginx""zabbix", "linux", "shell", "nginx"]
print(l)
print(list(set(l))) # 去除重复,去重后的元素是无序的
D:\soft\python\python.exe D:/soft/pycharm/pycharmfile/py基础/02_python基础类型/13_set.py
['zabbix', 'linux', 'shell', 'nginxzabbix', 'linux', 'shell', 'nginxzabbix', 'linux', 'shell', 'nginx']
['nginx', 'shell', 'nginxzabbix', 'zabbix', 'linux']Process finished with exit code 0
Python基础数据类型之set集合相关推荐
- Python基础——数据类型—集合
Python基础--数据类型-集合 Python基础--数据类型-集合 创建集合 快速查看元素是否在集合内 两个集合间的运算 集合a中包含,而集合b中不包含的元素 集合a或集合b中包含的所有元素 集合 ...
- python基础数据类型操作系统_python基础数据类型
python变量名里面 不能使用系统自带的关键字 不能有符号 不能使用数字作为开头 大小写敏感 变量名是没有类型的 是变量名所引用对象的数据类型 变量无须一些括号来括起来 python数据类型的可变 ...
- 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,complex,None,str, 转义字符
一木.溪桥 在Logic Education跟Amy学Python 12期:Python基础课 一木.溪桥学Python-04: Python基础数据类型int ,float ,bool ,compl ...
- python基础数据类型之列表,元组(基础二)
第四章 python基础数据类型之列表,元组(基础二) python常用数据类型之组合数据类型:列表,元组. 4.1 列表 list 列表介绍 列表是python的基础数据类型之⼀ ,其他编程语⾔言也 ...
- Python基础(06)——集合(set、frozenset)
Python基础(06)--集合(set.frozenset) 集合是无序无索引的集合,在Python中集合用花括号表示,字典也用花括号表示. 1.set的定义 创建集合:集合种的集合项可以是不同数据 ...
- Python运维开发(CMDB资产管理系统)——Python基础数据类型
Python基础数据类型 字符串(可以通过单引号,双引号,三个双引号来表示) 布尔(True和False) 整数 浮点数 列表 定义一个列表 列表常用的一些函数 append(向列表中添加元素,元素可 ...
- Python基础数据类型之字符串(二)
Python基础数据类型之字符串(二) 一.字符串的常规操作 二.字符串的大小写转换 1.首字母大写 2. 每个单词首字母大写 3.大写转化为小写 4.所有字母变成大写字母 二.验证码忽略大小写 三. ...
- Python基础数据类型之字符串(一)
Python基础数据类型之字符串(一) 一.字符串格式化 1.字符串占位符 2.字符串格式化操作 二.f-string格式化 三.字符串的索引 四.字符串的切片 1.常规切片使用方法 3.步长的介绍 ...
- Python基础——数据类型—元组
Python基础--数据类型-元组 Python基础--数据类型-元组 元组的创建 访问元组 元组的拼接 元组中的元素是不允许进行修改和删除的,但是可以删除整个元组 元组的运算符 打印元组元素 元组的 ...
最新文章
- jquery配合.NET实现点击指定绑定数据并且能够一键下载
- mysql半同步复制
- 设计模式-单例模式(1)
- Weka java.lang.reflect.InvocationTargetException
- 打印product所assign的product category和hierarchy的小工具
- 第十篇 数据类型总结
- SpringBoot2 集成 skywalking 实现链路追踪
- python 拟牛顿法 求非线性方程_C语言实现迭代法求非线性方程的根
- 大容量NoSql解决方案:Aerospike实战
- Linux内核设计第四周——扒开系统调用三层皮
- 使用Apache的ab工具进行压力测试
- 配置hadoop 使用fair scheduler调度器
- 无法在此设备上查看受保护内容_细说丨你想要的Excel保护与加密都在这里
- java内存管理机制-转载保存有价值的东西
- Sakai Demo搭建及遇到的问题汇总
- 18、TWS和IB中的错误处理信息
- 他25岁进贝尔实验室,32岁提信息论,40岁办达特茅斯会议,晚年患上阿兹海默 | 人物志...
- 《天涯明月刀》服务器端3D引擎设计与开发
- 三级分销系统产品设计原理
- 前后端分离整合阿里云OSS图片上传功能
热门文章
- 领域驱动设计系列文章汇总
- 虚拟机下安装vmware tools
- GIS开发随笔(3)——ArcXML和NET_Link方法
- *103.编译的过程
- 国家发改委:春运期间推动“健康码”全国一码通行
- 微软向马斯克的人工智能项目OpenAI投资10亿美元
- php过滤手机特殊字符,php过滤特殊字符实用函数
- python cv release_Python cv.GetSize方法代码示例
- java socket wex5_WeX5集成ActiveMQ+WebSocket实现消息推送
- laravel模板写php代码,Laravel框架之blade模板新手入门教程及小技巧