百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python精讲:在Python中访问字典详解

off999 2024-11-02 12:32 22 浏览 0 评论

欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是《在Python中访问字典详解》。本知识点主要内容有:使用print()函数访问字典和使用字典对象的get()方法访问字典。

由于昨天上午在做其他的,下午开始更新教程,一直到了网上12点都没有完成,因为做的是小白的新手教程,需要参考很多的资料,才能完成课程的编写。等我在网站和各个平台发布的时候,全部都是16日的凌晨发布的,相当于11月15日着24个小时,没有更新一篇文章。

从今以后要吸取教训,尽可能的在上午,至少就要在下午就要完成教程的更新。当然除了Python的新手教程更新以外,还要着手更新html、CSS、JavaScript、php、Vue等教程,那样我争取在明年年底的时候,开发出自己的建站CMS,让更多的人免费的使用到更好的CMS系统,让想在自己行业深耕的人,搭建好自己的知识体系,服务好自己的客户。

为什么我要一边学习一边更新免费的小白教程呢?因为我希望所有的人和我一样,可以通过学习新手教程,能够完成和我一样的学习效果,在整个网络上面,几乎没有系统的图文教程。当然,视频教程很多,很多公司都出了自己的完整的视频教程。拿新手Python教程来说,什么400集的,600集的都有。但是系统的图文教程,详细讲解的还真没有。当然像菜鸟教程、W3School这样的网站的图文教程是《Python3.10.0 官方中文参考文档》属于参考文档,没有深入浅出的讲解,有一些很容易看懂,有一些却是看不懂。就像法律、数学,不是把法律条文、数学公式摆在这里就能看得懂的。

所以我在出品自己的Python教程时,是参考了很多很多的网站教程、视频教程、参考手册等内容,最终完成全面,精准,浅显易懂的文章教程。

今天是2021年11月16日,目前正在CSDN 看《2021 Google 开发者大会直播》,一边看直播,一边写今天的课程吧!再回到主题,今天要分享的是在Python中访问字典。

1、使用print()函数访问字典

在Python中访问字典,同访问列表、元组差不多,都是使用print()函数。

以昨天的内容为例,某高校寝室住着4大美女,将他们的名字保存在一个列表中,相应的年龄保存在另一个列表中,根据名字和年龄创建一个字典。

name = ['美琳','梦洁','雪丽','美莲']
age = [18,19,19,18]
a = dict(zip(name,age))
print(a)

运行结果为:

{'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
>>> 

在Python中使用字典时,很少会直接输出字典的全部内容,而是根据指定的键得到相应的结果。

在Python中,访问字典的元素,通过键来访问的。(不像列表和元组,可以通过索引访问)。

如,要想获取上方“雪丽”的年龄,可以使用以下代码:

a = {'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
print("雪丽的年龄为:",a['雪丽'])

输出结果为:

雪丽的年龄为: 19
>>> 

如果获取的指定键不存在,则会出现以下KeyError错误,如:

a = {'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
print("韩梅梅的年龄为:",a['韩梅梅'])

输出结果为:

Traceback (most recent call last):
  File "D:\Python\Python310\Doc\000.py", line 2, in <module>
    print("韩梅梅的年龄为:",a['韩梅梅'])
KeyError: '韩梅梅'
>>> 

在实际开发中,很可能我们不知道当前存在什么键,所以需要避免该异常的产生。具体的解决方法是使用if语句对不存在的情况进行处理,即给一个默认值。例如,可以将上面的代码修改为以下内容。

a = {'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
print("韩梅梅的年龄为:",a['韩梅梅'] if '韩梅梅' in a else '我的字典里没有此人')

即当“韩梅梅”不存在时,将显示以下内容。

韩梅梅的年龄为: 我的字典里没有此人
>>> 


2、使用字典对象的get()方法访问字典

另外,Python中推荐的方法是使用字典对象的get()方法获取指定键的值。其语法格式如下:

dictionary.get(key[,default])

其中,dictionary为字典对象,即要从中获取值的字典;key为指定的键;default为可选项,用于当指定的键不存在时,返回一个默认值,如果省略,则返回None。

例如,通过get()方法获取“雪丽”的年龄,可以使用下面的代码。

a = {'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
print("雪丽的年龄为:",a.get('雪丽'))

执行结果如下:

雪丽的年龄为: 19
>>> 

在Python开发中,为了解决在获取指定键的值时,因不存在该键而导致抛出异常,可以为get()方法设置默认值,这样当指定的键不存在时,得到结果就是指定的默认值。例如,将上面的代码修改为以下内容。

a = {'美琳': 18, '梦洁': 19, '雪丽': 19, '美莲': 18}
print("韩梅梅的年龄为:",a.get('韩梅梅','我的字典里没有此人'))

运行结果为:

韩梅梅的年龄为: 我的字典里没有此人
>>> 

到此为止,本文主题《在Python中访问字典详解》中使用print()函数访问字典和使用字典对象的get()方法访问字典。就讲解完毕了,有不懂的可以给我留言哦!

相关推荐

一文搞清 Python 中方法和函数之间的区别

在我们使用Python的过程中,经常涉及到方法和函数,那他们有什么不同吗?在本文中,让我们通过示例了解Python中方法和函数之间的区别。Python函数Python函数是一系列以特定顺序...

Python 数据分析 + 可视化实战:5 分钟出图表,老板看了直点赞

还在用Excel做数据分析?效率太低了!同样一份销售数据,同事用Python半小时出报告,图表炫酷还能自动更新;你用Excel捣鼓大半天,稍微改点数据就得重新做图。今天教你用Python...

Python每日一库之Pendulum(python penup)

关于日期处理,Python提供了许多库,例如标准库datetime、第三方库dateutil、Arrow等。在这篇文章中,我想介绍我个人最喜欢的库pendulum,它使用非常方便,它可以满足...

Python计算两个日期相差天数 M + ACT/360模式,银行计算利息用

一般银行在计算计息的时候,都会用到M+ACT/360模式,也就是满1个月按30天计算,不足一个月按实际天数计算。一年算360天。例如:计算20151018到20190817相差的天数,201...

Python 之 MySql 每日一练 32——查询每门课程的平均成绩

一、表名和字段–1.学生表student(s_id,s_name,s_birth,s_sex)–学生编号,学生姓名,出生年月,学生性别–2.课程表course(c_id,c_name,t...

用Python制作数据报告:如何自动生成PDF格式的报告?

最近在琢磨数据分析工作的自动化,手动做报告真是太费劲啦!试过用Python整了个自动生成PDF报告的小工具,效果还不错。今天就聊聊怎么用Python把数据处理、可视化和PDF生成一条龙搞定。repor...

Github 1.2k star,一个好用的 Python 库-pyexcel!

大家好,今天为大家分享一个好用的Python库-pyexcel。Github地址:https://github.com/pyexcel/pyexcelpyexcel是一个功能强大的Python...

使用python写一个简单的到期事件钉钉提醒功能

前言:学习python第3天需求:简单的事件提醒功能版本:python3.9、mysql5.71、现在mysql建一个表event_remindCREATETABLE`event_remind`...

python定时任务最强框架APScheduler详细教程

APScheduler定时任务上次测试女神听了我的建议,已经做好了要给项目添加定时任务的决定了。但是之前提供的四种方式中,她不知道具体选择哪一个。为了和女神更近一步,我把我入行近10年收藏的干货免费拿...

解放双手,一键运行!Python每日自动生成数据日报

对于一个企业来说,高层看意义,中层看结论,基层看落地,数据日报、周报、月报可以监控销售个人在实际执行过程中的销售动态,而数据季度报、年报可以反映一个销售策略是否与实际的业务场景切合。可见数据日报在我们...

Python模块datetime、calendar、logging、argparse、re用法

datetime模块:提供日期和时间相关的功能。importdatetime#获取当前日期和时间current_time=datetime.datetime.now()#格式化日期...

python入门到脱坑正则表达式—re.search()函数

re.search()是Python正则表达式模块re中的核心函数之一,用于在字符串中搜索匹配指定模式的第一个位置。与re.match()不同,它不限制匹配必须从字符串开头开始。基本语法...

python3从零学习-5.2.1、日历相关模块calendar

源代码:Lib/calendar.py这个模块让你可以输出像Unixcal那样的日历,它还提供了其它与日历相关的实用函数。默认情况下,这些日历把星期一当作一周的第一天,星期天为一周的最后一...

DAY6-step7 Python 示例说明CALENDAR

Python中的Calendar模块具有Calendar类,该类允许基于日期,月份和年份来计算各种任务。最重要的是,Python中的TextCalendar和HTMLCalendar类允许您编辑日历...

Python 数据分析——Pandas 时间序列

Pandas提供了表示时间点、时间段和时间间隔等三种与时间有关的类型,以及元素为这些类型的索引对象,并提供了许多时间序列相关的函数。一、时间点、时间段、时间间隔Timestamp对象从Python标准...

取消回复欢迎 发表评论: