Python中的 Set 与 dict


Posted in Python onMarch 13, 2022

一、Set 集合类型

Set 集合类型 (交差并补) 特点 :无序 , 自动去重

  • 集合用{}表示,元素间用逗号分隔
  • 建立集合类型用{}或set()
  • 建立空集合类型,必须使用set
  • 定义一个普通的集合
setvar = {"shy","肉鸡","gala","小虎","狼牙山五壮士"}
print(setvar , type(setvar) )        //打印出来随机排列,无序

可以获取其中的元素吗? 不行
 print(setvar[0])                    // error
 
可以修改其中的元素吗? 不行
 setvar[0] = "嘻嘻"                 // error

  setvar = {"shy","肉鸡","gala","小虎","牙山","shy"}
  print(setvar)
  • 定义一个空集合
setvar = {}                       # 字典     //{} <class 'dict'>

setvar = set()                   # 空集合   //srt()  <class 'dict'>
print(setvar , type(setvar))

dict 字典类型 键值对存储的数据,可获取,可修改 表面上有序,实际存储时无序

  • python3.5之前 完全无序, 在python3.5之后 表面上有序,存储时无序
  • 语法:{键1:值1 ,键2:值2 , 键3:值3 … }
  • 映射是一种键(索引) 和值(数据)的对应
"streetAddr" : "中关村南大街55号"
"city" : "北京市"
  • 定义一个空的字典
dictvar = {}
print(dictvar , type(dictvar))
  • 定义一个普通字典
dictvar = {"top":"shy","middle":"肉鸡","bottom":"gala","support":"小明","jungle":"wei"}
print(dictvar)
  • 获取字典中的数据
res = dictvar["support"]
res = dictvar["jungle"]
print(res)
  • 修改字典中的数据
dictvar["bottom"] = "jacklove"
print(dictvar)

二、set 和 dict 的数据类型限制

  • 字典的键 和 集合的值 有数据类型限制只能使用如下类型: (不可变的数据类型 可哈希的数据类型)
  • Number(int float bool complex) , str , tuple
  • 可变数据: set dict list

字典的键是唯一的,字典的值没有数据类型的限制;

字典:

dictvar = {1:1 , "222":2 , 3.14:4 , 5-90j:5  , False:999 , (1,2,3,4,5):[1,2,4] }
print(dictvar , type(dictvar))

集合:

setvar  = {1,3.4,"sd",(1,2,3),4-10j,False }  //如果是True,则会被去重
print(setvar)  

(了解) 哈希算法:

  • 为了更加均匀的把数据分配到内存中,于是采用哈希算法,以减少哈希碰撞.更快的存储数据
  • 哈希算法要求数据类型只能是不可变的数据 (Number str  tuple) ,也叫可哈希数据类型
  • 哈希算法存储的数据都是无序的,所以字典和集合无序;

 到此这篇关于Python中的 Set 与 dict的文章就介绍到这了,更多相关Python Set 与 dict内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python访问sqlserver示例
Feb 10 Python
Python 爬虫学习笔记之多线程爬虫
Sep 21 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 Python
Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例
Feb 13 Python
Python创建普通菜单示例【基于win32ui模块】
May 09 Python
python实现机器学习之多元线性回归
Sep 06 Python
一文秒懂python读写csv xml json文件各种骚操作
Jul 04 Python
python 字符串常用函数详解
Sep 11 Python
Python接口测试结果集实现封装比较
May 01 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 Python
利用Python实现Excel的文件间的数据匹配功能
Jun 16 Python
Elasticsearch 批量操作
Apr 19 Python
Python echarts实现数据可视化实例详解
分享3个非常实用的 Python 模块
Mar 03 #Python
详解在OpenCV中如何使用图像像素
 Python 中 logging 模块使用详情
Mar 03 #Python
分享7个 Python 实战项目练习
Mar 03 #Python
python工具dtreeviz决策树可视化和模型可解释性
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
You might like
《星际争霸II》全新指挥官斯台特曼现已上线
2020/03/08 星际争霸
shopex主机报错误请求解决方案(No such file or directory)
2011/12/27 PHP
php读取图片内容并输出到浏览器的实现代码
2013/08/08 PHP
JavaScript 开发中规范性的一点感想
2009/06/23 Javascript
php gethostbyname获取域名ip地址函数详解
2010/01/24 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
jQuery实现鼠标划过添加和删除class的方法
2015/06/26 Javascript
JS鼠标拖拽实例分析
2015/11/23 Javascript
JavaScript解八皇后问题的方法总结
2016/06/12 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
Angularjs自定义指令Directive详解
2017/05/27 Javascript
浅谈jquery fullpage 插件增加头部和版权的方法
2018/03/20 jQuery
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
webpack的pitching loader详解
2019/09/23 Javascript
vue子传父关于.sync与$emit的实现
2019/11/05 Javascript
微信小程序实现拼图小游戏
2020/10/22 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
Python cookbook(数据结构与算法)让字典保持有序的方法
2018/02/18 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
Django 登陆验证码和中间件的实现
2018/08/17 Python
Python解决线性代数问题之矩阵的初等变换方法
2018/12/12 Python
详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决
2019/04/17 Python
Python获取数据库数据并保存在excel表格中的方法
2019/06/12 Python
Python笔记之工厂模式
2019/11/20 Python
Html5原生拖拽相关事件简介以及基础实现
2020/11/19 HTML / CSS
高级运动鞋:GREATS
2019/07/19 全球购物
德国BA保镖药房中文网:Bodyguard Apotheke
2021/03/09 全球购物
药物学专业学生的自我评价
2013/10/27 职场文书
电气技术员岗位职责
2013/11/19 职场文书
国际贸易专业个人职业生涯规划
2014/02/15 职场文书
社区党务公开实施方案
2014/03/18 职场文书
班主任工作经验交流材料
2014/05/13 职场文书
白血病募捐倡议书
2014/05/14 职场文书
学习张林森心得体会
2014/09/10 职场文书
论文答谢词
2015/01/20 职场文书
创业不要错过,这4种餐饮新模式
2019/07/18 职场文书