Python基础(15)——Python字典(dict)详解

news2024/11/26 13:31:56

Python基础(15)——Python字典(dict)详解

文章目录

  • Python基础(15)——Python字典(dict)详解
  • 课程:字典
  • 目标
  • 一. 字典的应用场景
  • 二. 创建字典的语法
  • 三. 字典常见操作
    • 3.1 增
    • 3.2 删
    • 3.3 改
    • 3.4 查
      • 3.4.1 key值查找
      • 3.4.2 get()
      • 3.4.3 keys()
      • 3.4.4 values()
      • 3.4.5 items()
  • 四. 字典的循环遍历
    • 4.1 遍历字典的key
    • 4.2 遍历字典的value
    • 4.3 遍历字典的元素
    • 4.4 遍历字典的键值对
  • 五. 总结

课程:字典

目标

  • 字典的应用场景
  • 创建字典的语法
  • 字典常见操作
  • 字典的循环遍历

一. 字典的应用场景

思考1: 如果有多个数据,例如:‘Tom’, ‘男’, 20,如何快速存储?

答:列表

list1 = ['Tom', '男', 20]

思考2:如何查找到数据’Tom’?

答:查找到下标为0的数据即可。

list1[0]

思考3:如果将来数据顺序发生变化,如下所示,还能用list1[0]访问到数据’Tom’吗?。

list1 = ['男', 20, 'Tom']

答:不能,数据’Tom’此时下标为2。

思考4:数据顺序发生变化,每个数据的下标也会随之变化,如何保证数据顺序变化前后能使用同一的标准查找数据呢?

答:字典,字典里面的数据是以键值对形式出现,字典数据和数据顺序没有关系,即字典不支持下标,后期无论数据如何变化,只需要按照对应的键的名字查找数据即可。

二. 创建字典的语法

字典特点:

  • 符号为大括号
  • 数据为键值对形式出现
  • 各个键值对之间用逗号隔开
# 有数据字典
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}

# 空字典
dict2 = {}

dict3 = dict()

注意:一般称冒号前面的为键(key),简称k;冒号后面的为值(value),简称v。

三. 字典常见操作

3.1 增

写法:字典序列[key] = 值

注意:如果key存在则修改这个key对应的值;如果key不存在则新增此键值对。

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}

dict1['name'] = 'Rose'
# 结果:{'name': 'Rose', 'age': 20, 'gender': '男'}
print(dict1)

dict1['id'] = 110

# {'name': 'Rose', 'age': 20, 'gender': '男', 'id': 110}
print(dict1)

注意:字典为可变类型。

3.2 删

  • del() / del:删除字典或删除字典中指定键值对。
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}

del dict1['gender']
# 结果:{'name': 'Tom', 'age': 20}
print(dict1)
  • clear():清空字典
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}

dict1.clear()
print(dict1)  # {}

3.3 改

写法:字典序列[key] = 值

注意:如果key存在则修改这个key对应的值 ;如果key不存在则新增此键值对。

3.4 查

3.4.1 key值查找

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1['name'])  # Tom
print(dict1['id'])  # 报错

如果当前查找的key存在,则返回对应的值;否则则报错。

3.4.2 get()

  • 语法
字典序列.get(key, 默认值)

注意:如果当前查找的key不存在则返回第二个参数(默认值),如果省略第二个参数,则返回None。

  • 快速体验
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1.get('name'))  # Tom
print(dict1.get('id', 110))  # 110
print(dict1.get('id'))  # None

3.4.3 keys()

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1.keys())  # dict_keys(['name', 'age', 'gender'])

3.4.4 values()

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1.values())  # dict_values(['Tom', 20, '男'])

3.4.5 items()

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1.items())  # dict_items([('name', 'Tom'), ('age', 20), ('gender', '男')])

四. 字典的循环遍历

4.1 遍历字典的key

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for key in dict1.keys():
    print(key)

image-20190212103905553

4.2 遍历字典的value

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for value in dict1.values():
    print(value)

image-20190212103957777

4.3 遍历字典的元素

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for item in dict1.items():
    print(item)

image-20190212104046564

4.4 遍历字典的键值对

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
for key, value in dict1.items():
    print(f'{key} = {value}')

image-20190212104223143

五. 总结

  • 定义字典
dict1 = {'name': 'Python', 'age': 30}

dict2 = {}

dict3 = dict()
  • 常见操作
    • 增/改
字典序列[key] =
  • 查找
    • 字典序列[key]
    • keys()
    • values()
    • items()

9c7bc198b36f77679bc7983f2f02810 (1)

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

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

相关文章

arm64架构的linux中断分析(一)

文章目录 1. 中断的概念和作用2. Linux中断处理机制2.1 中断请求2.2 中断处理2.3 中断完成2.4.中断触发和处理步骤详解2.4.1 异常向量表的解读 2.5 硬件中断号和软件中断号 1. 中断的概念和作用 当计算机的CPU需要在执行任务的同时响应外部事件时,中断是一种重要的…

Python基础(13)——Python列表(list)详解

Python基础(13)——Python列表(list)详解 文章目录 Python基础(13)——Python列表(list)详解课程:列表目标一. 列表的应用场景二. 列表的格式三. 列表的常用操作3.1 查找…

持 PMP®证书增持 CSPM-2证书,值不值?

2023年起,持有PMP证书的朋友可以直接增持一个同等级证书CSPM-2,不用重新考试,不用重新学习,原PMP证书不影响正常使用,相当于多了一个国标项目管理领域的证书。 第一步准备资料 1、填写能力评价表(简历和业绩不用填&am…

ChatGPT批量生成文章软件:创意无限,内容源源不断

ChatGPT是一种基于人工智能技术的自然语言处理模型,它能够生成各种主题的文章。这种软件具有创意无限、内容源源不断的特点,能够满足用户对于大量文章的需求。 方面一:文化艺术 ChatGPT软件可以生成关于文化艺术的文章,包括绘画、…

C++基础入门教程(2)

3 运算符 作用: 用于执行代码的运算 本章我们主要讲解以下几类运算符: 运算符类型 作用 算术运算符 用于处理四则运算 赋值运算符 用于将表达式的值赋给变量 比较运算符 用于表达式的比较,并返回一个真值或假值 逻辑运算符 用于根据表达式的…

DevExpress WPF功能区控件,更轻松创建商业应用工具栏!(下)

在上文中(点击这里回顾>>),我们主要介绍了DevExpress WPF的Ribbon、Toolbar和Menus组件支持MVVM、功能区命令栏和视图等,本文将继续介绍这些组件的自定义功能等。 DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超…

行业报告 | 生成式人工智能:人人可用的新时代

原创 | 文 BFT机器人 01 人工智能的发展迎来新拐点 ChatGPT 正在唤醒全球对人工智能 (AI)变革潜力的认知,激发起前所未有的关注和创造力浪潮。 该技术可以模仿人类的对话和决策能力,使我们站上了公众采用人工智能的第一个真正拐点。最终,所有…

k8s volume简单总结 —— 筑梦之路

Kubernetes目前支持的Volume类型包括Kubernetes的内部资源对象类型、开源共享存储类型、存储厂商提供的硬件存储设备和公有云提供的存储等。 将Kubernetes特定类型的资源对象映射为目录或文件,包括以下类型的资源对象: 类型描述ConfigMap应用配置Secret加…

WPF开发txt阅读器15:C#合并段落

文章目录 清理空格段落拼接去除空行按键事件 txt阅读器系列: 需求分析和文件读写目录提取类💎列表控件与目录💎快捷键翻页字体控件绑定💎前景/背景颜色书籍管理系统💎用树形图管理书籍语音播放💎播放进度显…

Cell -- PARADIGM算法可预测药物与微生物组的关联关系

在癌症患者中,药物对肠道细菌群的影响很难确定。以往的研究主要关注抗生素对肠道微生物组的影响,而对非抗生素药物的影响在人体中了解较少,这是由于缺乏可靠的药物暴露数据和长期粪便样本的收集。 2023年6月8日发表于《Cell》的“High-resolu…

2023年北京/上海/深圳DAMA-CDGA/CDGP数据治理工程师认证报名

DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业…

【openGauss基本概念---快速入门】

【openGauss简单使用---快速入门】 🔻 一、基本概念🔰 1.1 openGauss🔰 1.2 数据库(Database)🔰 1.3 数据块(Block)🔰 1.4 行(Row)🔰 …

Live800:企业如何提高服务数据可用性?

数据是现代企业的重要资源,蕴含着巨大的商业价值是企业运用科学管理、决策分析的基础。近几年来“大数据”一词的热度有目共睹,各行业根据自身特点和需求不断探索符合行业特性的大数据应用场景。那么对客服行业来说,大数据将对客户服务将产生…

基于C/S框架的医院LIS实验室检验系统源码

LIS系统功能 一、字典管理模块: 系统参数功能简介:集中设置系统使用过程中所需的参数值,一般由开发或实施人员进行设置。 标本管理功能简介:标本管理是对检验业务中涉及的检验标本类型进行初始化设置, …

详解浮点数

目录 1.什么是浮点数 2.举个例子 2.1.十进制转二进制 2.2.规范尾数位 2.3.计算指数位 2.4.拼接结果 3.精度丢失 4.JAVA中的浮点数思考 1.什么是浮点数 在计算机系统的发展过程中,曾经提出过多种方法表示实数,但是到为止使用最广泛的是浮点表示法…

sqoop导出实战

Sqoop导出实战 普通导出 在Sqoop中,使用export进行导出,指的是从HDFS中导出数据到MySql中: 构建MySql的表: CREATE TABLE u2 (id int(11) DEFAULT NULL,age int(11) DEFAULT 0 ) ENGINEInnoDB DEFAULT CHARSETutf8; 复制代码 HDFS导出到MySql 第一…

LabVIEW开发基于脑机接口的航空航天相机载体

LabVIEW开发基于脑机接口的航空航天相机载体 脑机接口是人脑与外部世界之间的直接通信渠道。脑机接口是一个全新的人机界面系统。该系统获取和分析生物电信号,目标是直接在大脑和外部设备之间创建一个通信通道。计算机或微处理器的发展提高了复杂的数据处理能力。生…

SolidWorks如何批量转换文件为最新版?

对于 SOLIDWORKS 的每个新版本,文件格式都会更新以适配最新的性能升级。当您每次打开旧版本 SOLIDWORKS 文件时,都会显示一条消息,通知您这是一个较旧的文件。保存文件时,必须先将文件转换为最新版本,然后再保存。这个…

2023年5月青少年机器人技术等级考试理论综合试卷(四级)

青少年机器人技术等级考试理论综合试卷(四级)2023.6 分数: 100 题数: 30 一、 单选题(共 20 题, 共 80 分) 1.Arduino C 语言, 部分程序如下, 串口监视器输出结果是“D”时, 变量 i …

青少年和成人错误监测神经源的多模态研究

导读 儿童和成人对目标导向行为的监控能力不同,这可以通过几种任务和技术来测量。此外,最近的研究表明,错误监测的个体差异在调节焦虑情绪的倾向方面具有重要作用,而且这种调节作用会随着年龄的增长而变化。本研究使用多模态方法…