【python】之字典及其操作

news2024/12/26 23:02:50

个人主页:天寒雨落的博客_CSDN博客-C,CSDN竞赛,python领域博主

 特别标注:仅为自己的学习记录笔记,方便复习和加深记忆,仅供借鉴参考!

  

目录

前言

字典的创建

格式

字典名={'key1':'value1','key2':'value2'......}

字典名=dict(key1='value1',key2='value2'......)

空字典的创建

使用dict对象的fromkeys()方法创建值为空的字典

通过已有列表/元组创建字典

字典名=dict(zip(列表/元组名1,列表/元组名2))

遍历字典

输出整个字典

根据键获得值

 遍历汇总

修改字典元素

添加字典元素

 更改字典元素

 删除字典元素

字典推导式 


前言

字典与列表类似,但是它保存内容是“键-值对”的形式存放的,键是唯一的,而值可以是多个,可以根据键找到相对应的值

字典的创建

字典的元素包含两个部分,分别是键和值,键和值之间用:分开,相邻元素之间用逗号隔开,整个字典用{}包起来(列表是[]、元组是()).

格式

字典名={'key1':'value1','key2':'value2'......}/字典名=dict('key1'='value1','key2'='value2'......)

字典中的键必须唯一,键必须不可变。

字典名={'key1':'value1','key2':'value2'......}

key和value如果是字符或字符串时必须要加单引号

举例

代码

dir={'a':97,'b':98}
print(dir)

执行结果

字典名=dict(key1='value1',key2='value2'......)

key一直不需要加'',value如果是字符或字符串时必须要加单引号

举例

代码

dir=dict(单词='word',b=98)
print(dir)

 

空字典的创建

字典名={}或字典名=dict()

使用dict对象的fromkeys()方法创建值为空的字典

举例

代码

p=[1,2,3,4]
dir=dict.fromkeys(p)
print(dir)

执行结果

通过已有列表/元组创建字典

字典名=dict(zip(列表/元组名1,列表/元组名2))

zip():用于将多个列表或元组对应位置的元素组合为元组,并返回包含这些内容的zip对象,zip对象可以根据list()/tuple()/dict()分别得到列表、元组、字典

举例

列表1元素小于列表2

代码

p1=[1,2,3,4]
p2=['a','b','c','d','e']
dir=list(zip(p1,p2))
print(dir)
dir=tuple(zip(p1,p2))
print(dir)
dir=dict(zip(p1,p2))
print(dir)

执行结果

举例

 元组1元素大于元组2

代码

p1=(1,2,3,4)
p2=('a','b','c')
dir=list(zip(p1,p2))
print(dir)
dir=tuple(zip(p1,p2))
print(dir)
dir=dict(zip(p1,p2))
print(dir)

执行结果

把p1改为列表,p2该为元组效果依旧如上 

遍历字典

输出整个字典

print(字典名)

根据键获得值

print(字典名[键])

举例

代码

p1=(1,2,3,4)
p2=['a','b','c','d','e']
dir=dict(zip(p1,p2))
print(dir)
print(dir[2])

执行结果

 遍历汇总

p1=(1,2,3,4)
p2=['a','b','c','d','e']
dir=dict(zip(p1,p2))
print(dir)
print(dir[2])
for i in dir.items():
    print(i)
for key in dir:
    print(key,":",dir[key])

执行结果

修改字典元素

添加字典元素

字典名[key]=value

举例

代码

p1=(1,2,3,4)
p2=['a','b','c','d','e']
dir=dict(zip(p1,p2))
dir[5]='e'
print(dir)

执行结果

更改字典元素

举例

代码

p1=(1,2,3,4)
p2=['a','b','c','d','e']
dir=dict(zip(p1,p2))
dir[4]='e'
print(dir)

执行结果

 删除字典元素

del 字典名[key]

举例

代码

p1=(1,2,3,4)
p2=['a','b','c','d','e']
dir=dict(zip(p1,p2))
del dir[4]
print(dir)

执行结果

字典推导式 

通过字典推导式可以快速生成一个字典

举例

通过字典推导式生成一个包含四个随机数的字典

代码

import random
randdir={i:random.randint(1,100)for i in range(1,5)}
print(randdir)

random.randint(1,100):获得1~100的随机整数

for i in range(1~5):键取1~5(不包括5)

执行结果

各位学习python的朋友可以联系我,互相讨论,一起进步!!!

👍+✏️+⭐️是对博主最大的鼓励与支持!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/978.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大前端进阶:vue

目录 1.vue概述与前端知识体系 1.vue概述 2.前端三要素 2.前端发展史 1.三端统一 2.后端技术 3.了解前后分离的演变史 1.后端为主的MVC时代 2.基于AJAX带来的SPA时代 3.前端为主的MV*时代 4.Node JS带来的全栈时代 5.总结 4.第一个Vue程序 1.什么是MVVM 2.为什么…

每天一个小细节:UDP协议特点与报文结构

在上一期的《每天应该小细节》中,外面介绍了协议这个概念,那么在我们的传输层有两个非常重要的协议,那便是TCP/IP和UDP协议,那么今天就来详细介绍一下UDP协议的主要内容。 上期每天一个小细节指路🐲🐲&…

【马里奥数据结构吃“金币”】时间复杂度和空间复杂度

作者:一个喜欢猫咪的的程序员 专栏:《数据结构》 喜欢的话:世间因为少年的挺身而出,而更加瑰丽。 ——《人民日报》 目录 时间复杂度: 大O渐进表示法: 空间复杂度&#x…

文件操作学不会?快进来,带你深入理解->C语言文件操作

你将收获: 进一步理解缓冲区,以及引申出getchar(),scanf("%c",&c)接收数据时,易踩坑的地方,并对其解释。 w,r,a打开文件后如何正确使用读、写函数。 还有其它收获… 文件为什么存在什么是文件文件的唯一标识符缓冲文…

【FLASH存储器系列一】非易失性存储器基本原理之EPROM

1非易失性器件的存储原理 1.1最小存储单元-浮栅晶体管 我们当前使用的非易失性存储器的基本存储单元基本都是浮栅晶体管。技术在发展,浮栅晶体管的结构也在调整演进,接下来将用系列文章中的三篇分享EPROM、EEPROM、FLASH这三种非易失存储器件的基本存储…

麒麟系统开发笔记(九):在国产麒麟系统上搭建宇视摄像头SDK基础环境Demo

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/127532255 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

链路状态路由协议 OSPF (二)

作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.Router ID 1.什么是Router ID 2.获得Router ID方法 二.DR和…

每日一题(day9)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录俩到经典题目一、走方格的方案数题目描述解题分析代码演示二.另类加法题目描述:解题分析常见的位运算代码演示总结俩到经典题目 一、走方格的方案数 题目…

【小嘟陪你刷题14】二叉树的最小深度、二叉树的所有路径、翻转二叉树

目录一、二叉树的最小深度思路一:深度优先搜索代码实现思路二:广度优先搜索代码实现二、二叉树的所有路径思路一:递归法代码实现思路二:迭代法三、翻转二叉树思路一:递归法代码实现思路二:迭代法代码实现一…

controller传输from-data数据格式的内容,取出传入数据为from-data格式的值

传输from-data数据格式的内容 postman里面的格式如下 接下来,便将上面的内容转换为代码 第一步:将File转为MultipartFile格式 首先,我们只能将File转为改格式才能进行网络传输,转换方式请看这篇博客:https://blog.…

推动行业数字化转型,亚马逊云科技自身就是“好把式”

(亚马逊全球副总裁、亚马逊云科技大中华区执行董事张文翊) 在2022年10月的亚马逊云科技中国峰会上,亚马逊云科技宣布了四大战略举措——“连中外、襄百业、携伙伴、促绿色“,进一步为中国本地客户赋能数字化探索与创新&#xff0…

顺序表实现—数据结构

文章目录一、顺序表概念及结构二、动态顺序表和静态顺序表的选择三、动态顺序表的实现逻辑(1)创建结构体(2)具体函数实现(*)顺序表初始化(*)释放顺序表(*)打印…

青少年python系列 21.turtle库绘制一个8

#绘制一个8import turtle#上方的小圆,圆心在左turtle.circle(80)#下方的大圆,圆心在右turtle.circle(-100)turtle.done() 青少年python教学视频ppt源码 青少年python系列目录_老程序员115的博客-CSDN博客 csdn文章推荐受影响解决办法10个字10行 csdn文…

梦开始的地方—— C语言指针入门

文章目录指针入门1.指针概念2. 指针和指针类型3. 野指针造成野指针的原因如何避免野指针4. 指针的运算指针加减整数指针的运算关系指针的关系运算5.指针和数组6. 二级指针7. 指针数组指针入门 1.指针概念 指针(Pointer) 是编程语言中的一个对象,利用地址&#xff…

31、Java——JDBC实现账号密码登录

✅作者简介:热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:乐趣国学的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java案例分…

Kong自动注册kong-spring-boot-stater

前言 kong-spring-boot-stater框架是为了解决SpringBoot项目和kong网关的自动注册,虽然Kong网关有提供可视化管理后台的操作界面,但是在多服务、多环境的时候在管理后台挨个配置每个服务节点是比较麻烦的,所以这也是kong-spring-boot-stater…

P3654 First Step (ファーストステップ)——暴力枚举

First Step (ファーストステップ) 题目背景 知らないことばかりなにもかもが(どうしたらいいの?) 一切的一切 尽是充满了未知数(该如何是好) それでも期待で足が軽いよ(ジャンプだ!&#xff09…

项目流程管理工具:OmniPlan Pro 4 中文

如何更好的管理项目流程?OmniPlan Pro 4中文是个很好的帮手,非常好用的项目流程管理工具, 强大的规划,管理复杂性: 引入三个新的内置模板:标准项目、标准项目(样式)和简单项目。 …

【TA】Unity角色二次元风格渲染

NRMToonLitSample Author : 文若 我的Demo地址 : NRMToonLitSample 学习视频地址 : Kerry大佬的 技术美术实战培训课程——卡通人物渲染方案 文章目录NRMToonLitSample1. 模型贴图基本信息2. 基础渲染效果2.1 基础shader Toon2.2 光照模型效果第一步&…

【从零到一的Raspberry】树莓派踩坑实录(一)系统安装与简单开发

写在前面 本系列作为树莓派上手记录,同时将本人的踩坑以及参考进行记录汇总,必要时罗列出小组分工,作为《嵌入式软开》小组参考文件。 0 硬件准备 名称描述树莓派3B支持wifi,包含了散热器、外壳、电源线等配件网线感谢王emo同学…