当前位置: 首页 > news >正文

使用字典进行动态编程

在你的程序中,你想要执行各种计算,例如计算卫星的总数。 此外,当你进行更高级的编程时,你可能会发现你需要从文件或数据库中加载此类信息,而不是直接编码到 Python 中。

为了帮助支持这些场景,Python 使你能够将字典中的键和值都视为列表。 可以动态确定键和值,并执行各种计算。

想象一个存储每月降雨量的字典。 你可能会有每个月份和相关降雨量的键。 你想将总降雨量相加,而使用每个单独的键编写代码来执行该操作的过程相当繁琐。

检索所有键和值
keys() 方法返回一个列表对象,其中包含所有键。 可以使用此方法循环访问字典中的所有项。

想象一下,你具有以下字典,存储了过去三个月的降雨量。

rainfall = {'october': 3.5,'november': 4.2,'december': 2.1
}

 假设要显示所有降雨量的列表。 可以键入每个月的名称,但这很繁琐。

for key in rainfall.keys():print(f'{key}: {rainfall[key]}cm')

october: 3.5cm
november: 4.2cm
december: 2.1cm

 你仍可以将方括号 ([ ]) 与变量名一起使用,而不是使用硬编码字符串字面量。

确定字典中是否存在某个键
更新字典中的某个值时,如果该键不存在,Python 将覆盖现有值或创建一个新值。 如果想添加到某个值而不是覆盖该值,可以使用 in 检查该键是否存在。 例如,如果要向十二月添加一个值,或创建一个新值(如果该月不存在),则可以使用以下代码:

if 'december' in rainfall:rainfall['december'] = rainfall['december'] + 1
else:rainfall['december'] = 1# Because december exists, the value will be 3.1

检索所有值

与 keys() 类似,values() 返回字典中所有值的列表,其中不包含其各自的键。 使用键进行标记时,values() 会很有帮助,如前面的示例所示,其中键是月份的名称。 可以使用 values() 来确定总降雨量:

total_rainfall = 0
for value in rainfall.values():total_rainfall = total_rainfall + valueprint(f'There was {total_rainfall}cm in the last quarter.')

There was 10.8cm in the last quarter. 

 

 

 

http://www.lryc.cn/news/501910.html

相关文章:

  • 机器学习02-发展历史补充
  • 全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之计数器与累加器(一)
  • Android的SurfaceView和TextureView介绍
  • Scala的集合
  • 1. Flink自定义Source
  • 关于LinuxWindows双系统在八月更新后出现的问题
  • VMware:如何在CentOS7上开启22端口
  • ubuntu远程桌面开启opengl渲染权限
  • 从小学题到技术选型哲学:以智能客服系统为例,解读相关AI技术栈20241211
  • 【C语言练习(5)—回文数判断】
  • 【Rust 学习笔记】Rust 基础数据类型介绍——数组、向量和切片
  • 2024年特别报告,「十大生活方式」研究数据报告
  • R中单细胞RNA-seq分析教程 (5)
  • openpnp - Too many misdetects - retry and verify fiducial/nozzle tip detection
  • 不与最大数相同的数字之和
  • CSS学习记录11
  • D95【python 接口自动化学习】- pytest进阶之fixture用法
  • Abaqus断层扫描三维重建插件CT2Model 3D V1.1版本更新
  • 隐式对象和泛型
  • CSS的颜色表示方式
  • 单链表常见面试题 —— LeetCode
  • Pydantic中的discriminator:优雅地处理联合类型详解
  • pgloader SQLSERVER -> PostgreSQL 配置文件样例
  • APP、小程序对接聚合广告平台,有哪些广告变现策略?
  • HarmonyOs DevEco Studio小技巧39-模拟器的使用
  • 【C语言】浮点数的原理、整型如何转换成浮点数
  • TesseractOCR-GUI:基于WPF/C#构建TesseractOCR简单易用的用户界面
  • Elasticsearch高性能实践
  • 软件测试--录制与回放脚本
  • nodejs 06.npm的使用以及package.json详解