软件测试|Python字典的访问方式你了解吗?

news2024/9/22 0:59:13
简介

Python中的字典(dictionary)是一种非常有用的数据结构,它允许您存储键-值对,从而可以快速查找、插入和删除数据。本文将详细介绍如何访问字典中的数据,包括基本访问、循环遍历、使用内置方法以及处理不存在的键等。

访问字典元素

字典中的元素是通过键(key)来访问的。以下是如何访问字典中的元素的基本方法:

# 创建一个字典
my_dict = {'name': 'Alice', 'age': 30, 'city': 'New York'}
 
# 使用键来访问值
name = my_dict['name']
age = my_dict['age']
 
print(name)  # 输出: 'Alice'
print(age)   # 输出: 30

如果键不存在,尝试访问将会引发KeyError错误。为了避免这种情况,我们可以使用get()方法:

# 使用get()方法来访问值
city = my_dict.get('city')
 
# 检查键是否存在
if city is not None:
    print(city)
else:
    print("City key does not exist.")
遍历字典

Python提供多种方法来遍历字典中的键和值:

  • 遍历所有键:
for key in my_dict:
    print(key)
  • 遍历所有值:
for value in my_dict.values():
    print(value)
  • 遍历键-值对:
for key, value in my_dict.items():
    print(f"Key: {key}, Value: {value}")
使用字典的内置方法

Python的字典对象提供了一些内置方法,用于查找、修改和删除字典中的数据。以下是一些常用方法:

  • get(key, default): 获取键对应的值,如果键不存在,返回指定的默认值。

  • keys(): 返回字典中所有的键。

  • values(): 返回字典中所有的值。

  • items(): 返回字典中所有的键-值对。

  • pop(key, default): 删除并返回指定键对应的值,如果键不存在,返回默认值。

  • popitem(): 删除并返回字典中的一个键-值对,通常是最后一个。

  • clear(): 清空字典中的所有元素。

  • update(other_dict): 使用另一个字典的键-值对更新当前字典。

处理不存在的键

当尝试访问字典中不存在的键时,Python提供了几种处理方式:

  • 使用get()方法并提供默认值:
value = my_dict.get('nonexistent_key', 'Default Value')
  • 使用if语句检查键是否存在:
if 'nonexistent_key' in my_dict:
    value = my_dict['nonexistent_key']
else:
    value = 'Default Value'
  • 使用setdefault()方法,如果键不存在,设置默认值:
value = my_dict.setdefault('nonexistent_key', 'Default Value')
总结

Python中的字典是一种非常强大的数据结构,我们可以以键-值对的形式组织和访问数据。掌握如何基本访问、遍历、使用内置方法以及处理不存在的键对于编写高效和可维护的Python代码非常重要。希望本文能够帮到大家。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

在这里插入图片描述

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。在这里插入图片描述

在这里插入图片描述

行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。

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

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

相关文章

Redis持久化和集群架构

目录 Redis持久化 RDB快照(snapshot) RDB优点 RDB缺点 RDB的触发机制 AOF持久化 AOF文件重写 AOF触发机制 混合模式 Redis主从架构 Redis哨兵高可用架构 Redis Cluster架构 槽位定位算法 跳转重定位 Redis集群节点间的通信机制 Redis持久化…

centos安装主从mysql集群

在 CentOS 系统上安装和配置 MySQL 主从复制环境的步骤与 Debian/Ubuntu 系统有所不同。以下是在 CentOS 系统上进行配置的详细步骤: 步骤 1:在主服务器上安装和配置 MySQL(10.206.0.13) 安装 MySQL 服务器: 首先,添加…

NeRF资料整理

文章目录 1.NeRF原理讲解2.NeRF中用到的NDC空间坐标系3.NeRF中的sample_pdf概率采样函数 1.NeRF原理讲解 nerf 原理讲解:这个视频对NeRF中体渲染公式的讲解和推导非常好,言简意赅,而且和论文、代码都可以对应上。 2.NeRF中用到的NDC空间坐标…

【AI】ChatGPT和文心一言那个更好用

大家好,我是全栈小5,欢迎阅读文章! 此篇是【话题达人】序列文章,这一次的话题是《自然语言处理的发展》 文章将以博主的角度进行讲述,理解和水平有限,不足之处,望指正。 目录 背景自我介绍面试题…

linux 定时任务 crontab 使用笔记

最近在服务器上跑撸茅台的脚本,需要使用定时任务每天早上9点准时预约一次抢茅台的脚本,因此需要用到 crontab 命令。crontab主要是用于设置周期性执行命令,比如每分钟、每小时或者每周执行一个固定的命令,该命令从标准输入设备读取…

靶场实战(18):OSCP备考之VulnHub MY CMSMS

打靶思路 资产发现 主机发现服务发现漏洞发现(获取权限) 80端口/HTTP服务 组件漏洞URL漏洞3306端口/MySQL服务 组件漏洞口令漏洞80端口/HTTP服务 URL漏洞URL漏洞提升权限 www-data用户 sudosuidcron内核提权信息收集armour用户 sudo 1、资产发现 1.1…

Pytest系列(2) - assert断言详细使用

前言 与unittest不同,pytest使用的是python自带的assert关键字来进行断言assert关键字后面可以接一个表达式,只要表达式的最终结果为True,那么断言通过,用例执行成功,否则用例执行失败 assert小栗子 想在抛出异常之…

基于ssm+vue的宠物医院系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目背景…

01 MyBatisPlus快速入门

1. MyBatis-Plus快速入门 版本 3.5.31并非另起炉灶 , 而是MyBatis的增强 , 使用之前依然要导入MyBatis的依赖 , 且之前MyBatis的所有功能依然可以使用.局限性是仅限于单表操作, 对于多表仍需要手写 项目结构: 先导入依赖,比之前多了一个mybatis-plus…

肌营养不良患者生活质量的“提升”

肌营养不良患者基本上是生活无法自理的,那么作为肌营养不良患者的家属,提升病人的生活质量就迫在眉睫。看了这篇文章你就知道该怎么做了。 ①保持生活环境整洁 肌营养不良患者本身体质较弱,而且后期会卧病在床,为了防止并发症的发…

【机组】算术逻辑单元带进位运算实验的解密与实战

​🌈个人主页:Sarapines Programmer🔥 系列专栏:《机组 | 模块单元实验》⏰诗赋清音:云生高巅梦远游, 星光点缀碧海愁。 山川深邃情难晤, 剑气凌云志自修。 ​ 目录 🌺一、 实验目…

Python初识——小小爬虫

一、找到网页端url 打开浏览器,打开百度官方网页点击图片,打开百度图片 鼠标齿轮向下滑,点击宠物图片 进入宠物图片网页,在网页空白处点击鼠标右键,弹出的框中最下方显示“检查”选项,点击(我是…

AIGC - 视频生成模型的相关算法进展

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/135688206 视频生成技术确实是一个很有潜力的颠覆性技术领域,可以作为企业创新梯队的重点关注方向,最近发展很快&#xff…

使用 FFmpeg 轻松调整视频的大小/缩放/更改分辨率

在此 FFmpeg 教程中,我们学习使用 FFmpeg 的命令行工具更改视频的分辨率(或调整视频的大小/缩放)。 更改视频的分辨率(也称为调整大小或缩放)是视频编辑、处理和压缩中非常常见的操作。对于 ABR 视频流尤其如此&#…

激光无人机打击系统——光束控制和指向系统

激光无人机(UAV)打击系统中的光束控制和指向系统通常包括以下几个关键组件和技术: 激光发射器:这是系统的核心,负责生成高能量的激光束。常用的激光类型包括固体激光器、化学激光器、光纤激光器等,选择取决…

组件(Component):可重用的元素

目标效果:点击粉色按钮后,出现一行“为什么非要点我?”的文字。 用组件的方式实现:首先单击项目文件夹01,然后右键弹窗中点击“添加新文件” 。 选择 QML File 文件: 文件名就叫Button,然后把代…

基于springboot+vue摄影分享管理系统

摘要 摄影分享管理系统是一款全栈应用,采用了Spring Boot和Vue.js作为技术基础。旨在为摄影爱好者提供便捷而强大的平台,用户可以在这里展示、分享和管理自己的摄影作品。系统具备完善的用户管理功能,包括注册、登录和个人信息编辑&#xff0…

css 3D立体动画效果怎么转这个骰子才能看到5

css 3D立体动画效果怎么转这个骰子才能看到5 <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equ…

【C++】unordered_map,unordered_set模拟实现

unordered_map&#xff0c;unordered_set模拟实现 插入普通迭代器const迭代器unordered_map的[ ]接口实现查找修改哈希桶完整代码unordered_map完整代码unordered_set完整代码 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 上一篇文章我们把unordered_map和u…

阿里云服务器怎么样?阿里云服务器优势、价格及常见问题

阿里云服务器ECS英文全程Elastic Compute Service&#xff0c;云服务器ECS是一种安全可靠、弹性可伸缩的云计算服务&#xff0c;阿里云提供多种云服务器ECS实例规格&#xff0c;如ECS经济型e实例、通用算力型u1、ECS计算型c7、通用型g7、GPU实例等&#xff0c;阿里云服务器网al…