Python的进阶之道【AIoT阶段一(上)】(十五万字博文 保姆级讲解)—玩转Python语法(一):面向过程—背上我的行囊—字典(1)(十四)

简介: 玩转Python语法(一):面向过程

4.2 字典

字典也是 Python 内置的数据结构之一,字典是包含若干“键:值”元素的无序可变序列,字典中的每一个元素都有两个值,它们之间用:隔开,第一个代表键,你可以理解成列表中的 索引,只不过列表中的索引只能是数字,而字典中的键可以是很多东西,字典中的值和列表中的元素值{'张三':18, '李四':19, '王五':18},在字典中,不同元素之间用,隔开,这一点和列表是一样的,列表中的所有元素均放在[]之中,字典中的所有元素放在{}中,不同于列表中的元素索引是唯二的(一个为正一个为负),字典中的键是唯一的,是不可重复的,而字典的值是可以重复的,比如,我们可以设置一个字典用来表示人物和年龄之间的关系:

{'张三':18, '李四':19, '王五':18}

显然,对于不同的人来说,我们是允许他们的年龄是相同的(字典的值相同),但是我们不允许他们的名字相同(字典的键不同),字典(Python)的实现原理其实和我们日常生活中的查字典是类似的,查字典是利用部首或者拼音找到目标字的页数,在字典(Python)中则是利用我们的键(key),去找到我们的值(value)。以上就是简单的认识一下字典,那么接下来,就让我们细致的去了解字典这个数据结构:

4.2.1 字典的创建,删除与遍历

🚩字典的创建:我们可以直接使用赋值运算符 “=”,直接把一个字典常量(用{}表示字典,字典的元素之间用,隔开)赋值给变量,如果我们想建立一个字典但是不给它赋任何的值,我们直接让变量 “=” 一个空字典({}),即:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = {'张三':18, '李四':19, '王五':18}
b = {}
print(a)
print(b)

image.png

我们还可以使用 dict() 函数创造一个字典,我们用=去对应键和值,=左边为键,=右边为值,代码如下:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
b = dict()
print(a)
print(b)

image.png

🚩当一个字典不再使用的时候,我们使用 del 将其删除

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
del a
print(a)

image.png

🚩字典的遍历默认遍历的是键(key)

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
for item in a:
    print(item)

image.png

如果我们想要遍历字典的值,需要调用 values() 方法:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
for item in a.values():
    print(item)

image.png

如果我们同时访问键和值的话(即访问字典),需要调用 items() 方法:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:12
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
for item in a.items():
    print(item)

image.png

4.2.2 字典元素的查询与访问

🚩字典中的键和值之间其实可以理解成通过映射的关系相连,如果你学过 C,你可以把键当成特殊的数组下标(这个下标可以是很多的数据类型),如果你学过 C++,你可以把字典理解成 map,对于 Python 初学者而言,我们可以把字典和列表对比,我们通过索引访问列表元素,索引必是整数,对于字典而言,我们用键去访问字典的值,每一个键对应一个值,且字典中的键和列表中的索引最大区别就是,键可以是很多的数据类型,但是索引只能是整数,获取字典中的值我们有两种方法,代码如下:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:35
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
print(a['name'])
print(a['height'])

image.png

如果我们访问的键(key)在我们的列表中不存在的话,会显示 KeyError:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:35
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
print(a['location'])

image.png

我们还可以使用 get() 方法用来返回我们指定的键(key)所对应的值(value),和上述不存在会显示 KeyError 不同的是,如果我们要访问的键(key)不存在的话,会显示 None(代表无),我们也可以修改当不存在指定键(key)时,get() 方法返回的值,代码如下:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:35
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
print(a.get('name'))
print(a.get('location'))
print(a.get('location', 'China'))
# China 为执行get(key)方法时,当key不存在时返回的值

image.png

🚩我们还可以通过 in 和 not in 判断一个键(key)是否在字典中存在,如果使用 in,那么存在返回 True,不存在返回 False,如果使用 not in,那么存在返回 False,不存在返回True,代码如下:

# 博主:辰chen
# 博客地址:https://chen-ac.blog.csdn.net/
# 开发时间:2021/12/11 23:35
# 欢迎大家关注AIoT相关博客~
a = dict(name='张三', age=18, height=177, weight='70kg')
print('name' in a)
print('name' not in a)

image.png

目录
相关文章
|
23天前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
16 1
|
2月前
|
存储 Java Serverless
【Python】字典
【Python】字典
38 1
|
2月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
42 0
|
2月前
|
存储 自然语言处理 数据库
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
33 0
|
2月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景
34 0
|
2月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (一)
Python操作:字符串--列表--元组--字典--运算符 (一)
23 0
|
2月前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (二)
Python操作:字符串--列表--元组--字典--运算符 (二)
23 0
|
17天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
16天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
4天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
98 80
下一篇
DataWorks