Python精讲:在Python中访问字典详解
off999 2024-11-02 12:32 26 浏览 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()方法访问字典。就讲解完毕了,有不懂的可以给我留言哦!
相关推荐
- zabbix 7.0 安装部署 centos stream9
-
关闭selinux和防火墙setenforce0vim/etc/selinux/config设置为disabledsystemctlstopfirewalldsystemctlstop...
- Ubuntu 操作系统常用命令详解_ubuntu各种命令
-
UbuntuLinux是一款流行的开源操作系统,广泛应用于服务器、开发、学习等场景。命令行是Ubuntu的灵魂,也是高效、稳定管理系统的利器。本文按照各大常用领域,详细总结Ubuntu必学...
- 秒变万能家庭服务器!斐讯N1 armbian安装指南
-
一直以来,我都想配置一台小型服务器放在家里玩一玩,但是x86架构的主机体积大功耗高,价格也不低。而树莓派的话,价格便宜一点,性能对于轻度使用也基本够用。可是树莓派仍然要两三百块钱,感觉还是有点贵。于是...
- 浏览器里跑Windows XP?开发者硬核复现,免安装还能玩扫雷、纸牌接龙,网友直呼:爷青回!
-
整理|苏宓出品|CSDN(ID:CSDNnews)你还记得上一次用WindowsXP是什么时候吗?这个诞生于2001年的操作系统,曾因操作简单、性能提升、兼容性好,迅速成为一代人...
- 阿里云安装飞牛教程,这次待机0功耗了
-
把照片、聊天记录、工作文件一股脑儿塞进网盘,却突然发现账号被封、文件被删,那一刻像被人扒光了扔大街上。昨晚,我在阿里云花29块买了台最便宜的VPS,折腾三小时,把Nextcloud装进这台小机器,手机...
- 【入门】【失败】Linux下mysql-8.0.22-linux-x64.tar.gz 安装
-
因为系统环境的一些问题,最后安装失败这篇文章只保留过程一些笔记做参考创建MySQL用户和组sudogroupaddmysqlsudouseradd-r-gmysql-s/bin/...
- Jenkins 安装与部署完整指南_jenkins安装与配置windows
-
Jenkins安装与部署完整指南Jenkins是一款开源的自动化服务器,常用于持续集成(CI)和持续交付(CD)。本文将介绍在Linux、Windows、macOS三大平台上的安装与部署步骤,...
- Nacos 安装教程_nacos安装部署
-
Nacos安装与生产部署增强版教程(Windows&Linux)Nacos是阿里巴巴开源的一款动态服务发现、配置管理和服务管理平台,支持几乎所有主流类型服务的发现、配置和管理。加入了版本匹配...
- Linux开机自启服务完全指南:3步搞定系统服务管理器配置
-
为什么需要配置开机自启?想象一下:电商服务器重启后,MySQL和Nginx没自动启动,整个网站瘫痪!这就是为什么开机自启是Linux运维的必备技能。自启服务能确保核心程序在系统启动时自动运行,避免人工...
- centos nginx docker-compose安装
-
一、nginx及docker文件准备1、docker-compose.ymlversion:'3'services:nginx:restart:always...
- Nginx合集-高可用(Keepalived)_高可用 nginx
-
Keepalived简介Keepalived是Linux下一个轻量级别的高可用解决方案。高可用:广义来讲,是指整个系统的高可用行;狭义的来讲就是主机的冗余和接管。它与HeartBeat实现类似的功能,...
- Nginx 笔记_nginx最全教程
-
gcc#可能需要安装C++yum-yinstallgcc-c++installnginxbybashcd/usr/local/src##@seehttp://nginx...
- JAVA面试|nginx如何解决跨域问题_nginx解决跨域问题原理
-
核心思想:跨域问题是浏览器的安全限制,不是服务器本身拒绝通信。Nginx作为强大的反向代理服务器,可以通过在响应中添加特定的HTTP头信息(CORS头),告诉浏览器:“这个跨域请求是我允许的,你可...
- Nginx主从架构详解(图文全面总结)
-
Nginx是大型架构的必备技能,下面我重点详解Nginx主从架构@mikechen文章来源:mikechen.ccNginx主从在大规模Web应用和高可用部署中,Nginx作为高性能反向代理与负...
- Nginx动静分离详解(原理+配置+实战)
-
Nginx动静分离是一种常见的Web服务优化技术,Nginx动静分离可以更好的提升性能@mikechen文章来源:mikechen.ccNginx动静分离动静分离,顾名思义,就是将Web应用中...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- zabbix 7.0 安装部署 centos stream9
- Ubuntu 操作系统常用命令详解_ubuntu各种命令
- 秒变万能家庭服务器!斐讯N1 armbian安装指南
- 浏览器里跑Windows XP?开发者硬核复现,免安装还能玩扫雷、纸牌接龙,网友直呼:爷青回!
- 阿里云安装飞牛教程,这次待机0功耗了
- 【入门】【失败】Linux下mysql-8.0.22-linux-x64.tar.gz 安装
- Jenkins 安装与部署完整指南_jenkins安装与配置windows
- Nacos 安装教程_nacos安装部署
- Linux开机自启服务完全指南:3步搞定系统服务管理器配置
- centos nginx docker-compose安装
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)