【Python语言】字典的使用方法总结

目录

1、基本知识

1.1 定义

1.2 定义字典变量

1.3 定义空字典

2、字典的常用方法介绍

2.1 基于key获取value

2.2 嵌套字典

2.3 新增元素

2.4 更新元素

2.5 删除元素

2.6 清空字典

2.7 获取全部的key

2.8 遍历字典

2.9 统计字典内的元素数量

3、 字典常用操作总结一览


1、基本知识

1)键值对,通过键取值

2)内容不允许重复

3)不可以使用下标索引

4)允许嵌套

1.1 定义

{key:value, key:value, ......key:value}

1.2 定义字典变量

my_dict={key:value, key:value, ........key:value}

1.3 定义空字典

my_dict2 = { }

my_dict = dict()

示例

my_dict = {"林夏":100,"杰舒":99,"天真":98}
my_dict2={ }
my_dict3=dict()

2、字典的常用方法介绍

2.1 基于key获取value

my_dict = {"林夏":100,"杰舒":99,"天真":98}
score = my_dict["杰舒"] #提取杰舒的考试成绩,基于key取出value
print(f"杰舒的考试分数是:{score}")

2.2 嵌套字典

#嵌套字典
stu_score_dict = {
    "林夏":{
        "语文":97,
        "数学":96,
        "英语":98
    },
    "杰舒":{
        "语文":93,
        "数学":99,
        "英语":99
    },
    "天真": {
        "语文": 92,
        "数学": 100,
        "英语": 95
    }
}
#从嵌套字典里获取数据
score = stu_score_dict["林夏"]["英语"]
print(f"林夏的英语分数是:{score}")

2.3 新增元素

语法:字典[key] = value

字典本身被修改,新增了元素

2.4 更新元素

语法:字典[key] = value

字典本身被修改,元素更新

注:字典中的值不可以重复,若字典中无key,则新增键值对;若有,则更新内容

my_dict = {"林夏":100,"杰舒":99,"天真":98}
print(my_dict)
my_dict["浩楠"] = 79  #原字典无key,添加新元素
print(my_dict)
my_dict["天真"] = 95  #原字典中有key,修改value值
print(my_dict)

2.5 删除元素

语法:字典.pop(key)

获得指定key的value,同时字典被修改,指定key的数据被删除

stu_score = {"林夏":100,"杰舒":99,"天真":98}
print(f"删除元素前字典为:{stu_score}")
value = stu_score.pop("杰舒") #删除键值对杰舒
print(value)
print(f"删除元素后字典为:{stu_score}")

2.6 清空字典

语法:字典.clear()

字典被修改,元素被清空

stu_score = {"林夏":100,"杰舒":99,"天真":98}
#清除字典
stu_score.clear()
print(stu_score)

2.7 获取全部的key

语法:字典.keys(),得到字典中的全部key

stu_score = {"林夏":100,"杰舒":99,"天真":98}
#得到字典中的全部key
keys = stu_score.keys()
print(keys)

2.8 遍历字典

方式1:通过获取全部的key来完成遍历

my_dict = {"林夏":100,"杰舒":99,"天真":98}
#方式1:通过获取全部的key来完成遍历
keys = my_dict.keys()
for key in keys:
    print(f"字典的key是:{key}")
    print(f"字典的value是:{my_dict[key]}")

方式2:直接对字典进行for循环,每一次循环直接得到key

my_dict = {"林夏":100,"杰舒":99,"天真":98}
#方式2:直接对字典进行for循环,每一次循环直接得到key
for key in my_dict:
    print(f"字典的key是:{key}")
    print(f"字典的value是:{my_dict[key]}")

2.9 统计字典内的元素数量

语法:len(字典)

my_dict = {"林夏":100,"杰舒":99,"天真":98}
#统计字典的元素数量
num = len(my_dict)
print(f"字典中的元素数量有:{num}个")

3、 字典常用操作总结一览

1)字典[key] 获取指定key对应的value值
2)字典[key] = value添加或更新键值对
3)字典.pop(key)取出key对应的value并在字典内删除此key的键值对
4)字典.clear清空字典
5)字典.keys()获取字典的全部key,可用于for循环遍历字典
6)len(字典)统计字典中的元素数量

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

控制器宕机之SBC相关

简介: 本文主要以FS6500系列展开介绍,介绍深度安全故障(深度睡眠)状态的转换,以及相关寄存器值的变化过程 1.控制器什么时候会因为SBC停止工作? 窗口看门狗未及时喂狗达到故障计数最大值芯片进入某种(deep fail state)模式或LP-DFS模式或LP-Sleep模式…

苹果电脑录屏快捷键,让你成为录屏达人

“苹果电脑录屏好麻烦呀,操作步骤很繁琐,有人知道苹果电脑怎么快速录屏呀,要是有快捷键就更好了,大家知道苹果电脑有录屏快捷键吗?谢谢啦!” 苹果电脑以其直观的用户界面和卓越的性能而闻名,而…

防范Java多线程陷阱:探秘ABA问题的起因及解决之道!

一、概念 CAS(Compare and Swap)是一种乐观锁机制,它是一种基于硬件指令实现的原子操作,可以在不使用传统互斥锁的情况下,保证多线程对共享变量的安全访问。在Java中,我们可以使用Atomic类和AtomicReferenc…

使用 Python 的基于边缘和基于区域的分割

引言 在本文中,我们将重点讨论基于边缘和基于区域的分割技术。在讨论细节之前,我们需要了解细分它们分别是什么以及它们是如何工作的。 分割 图像分割是一种将数字图像分割成各种图像对象的技术。 区域中的每个像素(图像对象)在某些属性(如颜色、亮度…

Evil靶场

Evil 1.主机发现 使用命令探测存活主机,80.139是kali的地址,所以靶机地址就是80.134 fping -gaq 192.168.80.0/242.端口扫描 开放80,22端口 nmap -Pn -sV -p- -A 192.168.80.1343.信息收集 访问web界面 路径扫描 gobuster dir -u http…

FDTD自定义材料

官方原文档链接 该文档内容摘自原文档及相关链接 从txt导入材料数据 各项同性材料的3Dmaterials数据 txt文件中应包含以下三列。第一列为波长或频率;第二列为折射率或介电常数实部;第三列为折射率或介电常数虚部。 420 5.08894 0.237724 440 4.78…

基于 HTTP Digest 与 CURL 以及 Requests 的兼容性问题:解决方案与推测原因

在使用Python库requests进行HTTP Digest认证时,我遇到了一个问题。当我使用requests.get()函数时,返回了401 Unauthorized错误,但是当我使用cURL命令时,认证成功。 解决方案: 确认使用的requests版本:我首…

《QT从基础到进阶·三十一》事件循环QCoreApplication,QGuiApplication,QApplication

QCoreApplication:为非界面类项目提供一个事件监听循环。 QGuiApplication:以QtGui模块基础开发的界面项目需要应用环境。 QApplication:以QWidget模块基础开发的界面项目需要应用环境。 可以简单总结为,如果是非界面项目开发&am…

基于单片机的指纹密码锁(论文+源码)

1.系统设计 基于单片机的指纹锁控制系统设计的整体框图如图2.1所示,主控制模块选用单片机STC89C52单片机,同时还包括AT24C02存储电路,指纹模块,LCD12864液晶,继电器,矩阵键盘等硬件电路。其中指纹模块和矩…

Java面试题(每天10题)-------连载(32)

目录 设计模式篇 1、工厂方法模式(利用创建同一接口的不同实例): 2、抽象工厂模式(多个工厂) 3、单例模式(保证对象只有一个实例) 4、原型模式(对一个原型进行复制、克隆产生类…

强国有我助力苔花绽放 | 爱心捐赠仪式在西安顺利举办

2023年11月2日,由中国儿童中心、全国少年儿童“双有”主题教育活动组委会、中华少年儿童慈善救助基金会强国有我项目主办,陕西省青少年宫协会、陕西省妇女儿童活动中心、陕西回归儿童救助中心承办的“苔花绽放”事实无人抚养儿童关爱计划捐赠仪式在陕西回…

企业商标信息查询API的优势和应用实例分析

前言 企业商标是企业在市场中的重要标识和竞争力的体现,而商标信息查询API则成为了企业品牌管理的重要工具。那么,这篇文章将详细阐述企业商标信息查询API的优势和应用实例分析。 企业商标信息API的优势 企业商标信息查询API的优势在于它可以快速、准…

头部厂商Q3交付量环比下滑!激光雷达,现实很骨感

由于中国自主品牌车企在高阶智驾赛道上的激进策略,全球激光雷达行业的走势,也无疑受到中国市场的影响。 本周,禾赛科技发布2023年度三季报,季度激光雷达交付量为47,440台,同比增长125.5%,其中ADAS激光雷达交…

【Vue-Demo】倒计时3秒后返回首页

首页path:/ 倒计时结束后要清除计时器&#xff0c;防止内存泄漏&#xff1a; if (this.count 0) {clearInterval(this.timer); }<!-- ErrorJump.vue --> <template><h2>Error&#xff1a;找不到页面&#xff01;</h2><h4>{{ count }}S后<R…

人均年薪70万!华为项目经理具备了哪些能力

大家好&#xff0c;我是老原。 最近在逛脉脉的时候&#xff0c;看到了一位华为项目经理晒出的月收入&#xff1a;5W&#xff0c;这还是不包含每年分红奖励前的到手薪资。 按他现在的19级别&#xff0c;再加上分红奖励&#xff0c;年薪至少在70W&#xff0c;留言区羡慕声一片。…

中国首幅1米分辨率土地覆盖图

SinoLC-1&#xff1a;中国1米分辨率土地覆盖图为首个具有中国国家尺度覆盖&#xff0c;空间分辨率1米的土地覆盖专题图。针对大范围高分辨率土地覆盖制图中地物复杂多样、高精度训练样本缺乏、制图方法区域迁移性要求高等关键难题&#xff0c;中国地质大学&#xff08;武汉&…

051-第三代软件开发-日志容量时间限制

第三代软件开发-日志容量时间限制 文章目录 第三代软件开发-日志容量时间限制项目介绍日志容量时间限制 关键字&#xff1a; Qt、 Qml、 Time、 容量、 大小 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;这个项目结合了 QML&#xff08;Qt Meta-Object Language…

VUE基础的一些实战总结

目录 创建一个 Vue 应用 步骤 1&#xff1a;安装 Node.js 和 npm 步骤 2&#xff1a;安装 Vue CLI 步骤 3&#xff1a;创建 Vue 项目 步骤 4&#xff1a;启动开发服务器 步骤 5&#xff1a;访问应用程序 步骤 6&#xff1a;编辑 Vue 应用 步骤 7&#xff1a;构建和部署…

接口测试没有接口文档怎么办,如何根据接口文档写接口开发

在进行接口测试之前&#xff0c;一般开发会提供接口文档&#xff0c;提供一些接口参数和必要的熟悉&#xff0c;方便我们编写接口脚本。 但是&#xff0c;如果没有提供接口开发文档&#xff0c;该如何编写接口测试脚本呢&#xff1f; 编写测试脚本之前需要做什么准备&#xff1…

TS-08-A-2D、TS-08-B-1H插装式电磁比例溢流阀放大器

TS-08-A-2D、TS-08-B-1H插装式电磁比例溢流阀放大器持续的电磁铁、高效能的电磁铁结构、可选的线圈电压和终端、工业化通用插孔、紧凑的结构。 螺纹插装式、先导滑阀式减压溢流阀&#xff0c;利用可变电流输入可实现指定范围内的输出压力连续调节。输出压力与 DC 电流输入成比…