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实现进程间通信简单实例
Jul 23 Python
Python实现Tab自动补全和历史命令管理的方法
Mar 12 Python
用Python代码来绘制彭罗斯点阵的教程
Apr 03 Python
Python Django使用forms来实现评论功能
Aug 17 Python
python中matplotlib实现最小二乘法拟合的过程详解
Jul 11 Python
python pandas修改列属性的方法详解
Jun 09 Python
python实现socket+threading处理多连接的方法
Jul 23 Python
基于python3监控服务器状态进行邮件报警
Oct 19 Python
Pyecharts绘制全球流向图的示例代码
Jan 08 Python
python实现KNN近邻算法
Dec 30 Python
教你利用python实现企业微信发送消息
May 23 Python
Python中的socket网络模块介绍
Jul 23 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
thinkphp使用literal防止模板标签被解析的方法
2014/11/22 PHP
php图形jpgraph操作实例分析
2017/02/22 PHP
ThinkPHP Where 条件中常用表达式示例(详解)
2017/03/31 PHP
PHP实现登陆并抓取微信列表中最新一组微信消息的方法
2017/07/10 PHP
js下获取div中的数据的原理分析
2010/04/07 Javascript
jQuery对html元素取值与赋值的方法
2013/11/20 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
学好js,这些js函数概念一定要知道【推荐】
2017/01/19 Javascript
jquery表单验证插件validation使用方法详解
2017/01/20 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
2017/06/09 jQuery
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
javascript 通过键名获取键盘的keyCode方法
2017/12/31 Javascript
echarts整合多个类似option的方法实例
2018/07/10 Javascript
对angular 监控数据模型变化的事件方法$watch详解
2018/10/09 Javascript
详解vue beforeRouteEnter 异步获取数据给实例问题
2019/08/09 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
Taro小程序自定义顶部导航栏功能的实现
2020/12/17 Javascript
[41:11]完美世界DOTA2联赛PWL S2 Inki vs Magma 第一场 11.22
2020/11/24 DOTA
使用Python3中的gettext模块翻译Python源码以支持多语言
2015/03/31 Python
在python3中实现更新界面
2020/02/21 Python
django 利用Q对象与F对象进行查询的实现
2020/05/15 Python
基于Django集成CAS实现流程详解
2020/11/28 Python
python如何用matplotlib创建三维图表
2021/01/26 Python
美国著名的户外用品品牌:L.L.Bean
2018/01/05 全球购物
Lookfantastic台湾:英国彩妆美发保养购物网
2018/03/26 全球购物
单位消防安全制度
2014/01/12 职场文书
领导班子四风表现材料
2014/08/23 职场文书
社区环境卫生倡议书
2015/04/29 职场文书
开会迟到检讨书范文
2015/05/06 职场文书
2015年基层党支部工作总结
2015/05/21 职场文书
中学校园广播稿
2015/08/18 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
2019年“我为祖国点赞”演讲稿(3篇)
2019/09/26 职场文书
SpringCloud Alibaba 基本开发框架搭建过程
2021/06/13 Java/Android