助你更好的理解 Python 字典(python中字典的含义)
off999 2025-05-09 20:59 56 浏览 0 评论
字典是Python中的常用数据类型之一,可将数据存储在键/值对中,同 Java 中的 Map 相似。
1、什么是字典理解?
字典理解是创建字典的一种优雅简洁的方法。
字典理解优化
使用字典理解优化函数。
示例:
# 字典理解例:
square_dict = {num: num*num for num in range(1, 11)}
print(square_dict)输出:
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}
sandbox> exited with status 0创建了 square_dict 带有数字平方键/值对的字典。但是,使用字典理解可以使在一行中创建字典。
2、使用字典理解
字典理解的最小语法为:
dictionary = {key: value for vars in iterable}解析语法图
让将此语法与上例中的字典理解进行比较。
如何使用字典理解
示例:
old_price = {'milk': 1.04, 'coffee': 2.8, 'bread': 2.8}
dollar_to_pound = 0.86
new_price = {item: value*dollar_to_pound for (item, value) in old_price.items()}
print(new_price)输出:
{'coffee': 2.408, 'milk': 0.8944, 'bread': 2.408}
sandbox> exited with status 0可以看到以美元为单位检索商品价格并将其转换为英镑。使用字典理解使此任务更加简单和短。
3、字典理解中的条件
可以通过添加条件来进一步自定义字典理解。让来看一个实例。
如果条件字典理解
示例:
original_dict = {'jack': 38, 'michael': 48, 'guido': 57, 'john': 33}
even_dict = {k: v for (k, v) in original_dict.items() if v % 2 == 0}
print(even_dict)输出:
{'michael': 48, 'jack': 38}
sandbox> exited with status 0可以看到,由于if字典理解中的子句,仅添加了具有偶数值的项目。
多重if条件字典理解
示例:
original_dict = {'jack': 38, 'michael': 48, 'guido': 57, 'john': 33}
new_dict = {k: v for (k, v) in original_dict.items() if v % 2 != 0 if v < 40}
print(new_dict)输出:
{'john': 33}
sandbox> exited with status 0在这种情况下,仅奇数值小于40的项目已添加到新字典中。
这是因为if字典理解中有多个子句。等效于and必须同时满足两个条件的操作。
if-else条件字典理解
示例:
original_dict = {'jack': 38, 'michael': 48, 'guido': 57, 'john': 33}
new_dict_1 = {k: ('old' if v > 40 else 'young')
for (k, v) in original_dict.items()}
print(new_dict_1)输出:
{'john': 'young', 'michael': 'old', 'jack': 'young', 'guido': 'old'}
sandbox> exited with status 0在这种情况下,将通过子典理解来创建新字典。
价值大于等于40的商品的值为“old”,而其他商品的值为“young”。
4、嵌套字典理解
可以将字典理解本身添加到字典理解中以创建嵌套字典。
具有两个字典理解的嵌套字典
示例:
dictionary = {
k1: {k2: k1 * k2 for k2 in range(1, 6)} for k1 in range(2, 5)
}
print(dictionary)输出:
{2: {1: 2, 2: 4, 3: 6, 4: 8, 5: 10}, 3: {1: 3, 2: 6, 3: 9, 4: 12, 5: 15}, 4: {1: 4, 2: 8, 3: 12, 4: 16, 5: 20}}
sandbox> exited with status 0在嵌套字典中构造了一个乘法表,用于2到4的数字。每当使用嵌套字典理解时,Python都会首先从外部循环开始,然后再进入内部循环。
5、使用字典理解的优势
以上文章介绍所示,字典理解大大缩短了字典初始化的过程。
它使代码更具 pythonic 风格,在的代码中使用字典理解可以缩短代码行,同时保持逻辑完整。
6、总结
以上内容基于 Python 基础,介绍了如何使用字典。
通过分类对每一模块,进行详细的讲解。使用图解析语法,实例代码演示,运行效果图的展示,希望能够帮助大家更好的理解 Python 字典。
相关推荐
- 怎么自己安装win10系统(怎么自己安装win10系统)
-
WindowS10安装系统教程方法很简单,建议使用U盘启动盘安装方法,找到一个8g的U盘,用老毛桃或大白菜启动程序制作成启动盘,将windowS10操作系统传入U盘内,插在电脑USB接...
- win7升级win10需要产品密钥(windows7升级10要激活码吗)
-
1、通过win+R打开“运行”窗口,输入“cmd”打开命令提示窗口,输入slmgr/upk,卸载当初前操作系统密钥; 2、打开当前操作系统“系统盘”找内到“ESD”(升级助手缓存的windows...
- 华硕声卡驱动下载官网(华硕官方声卡驱动)
-
如果华硕笔记本声卡驱动消失了,可以尝试以下方法进行修复。首先,进入设备管理器,检查是否存在声卡设备,并进行更新驱动。如果没有找到声卡设备,可以在华硕官方网站上搜索相应型号的声卡驱动程序,并下载安装最新...
- sd卡低级格式化(格式化 sd卡)
-
1.首先将装有内存卡的读卡器插到电脑主机USB接口中。2.接着点这里下载【内存卡低格工具llftool】工具。3.下载完成后,对其进行解压缩,然后双击运行其中的可执行程序。4.在打开的修复程序窗口中,...
- 怎么把一个u盘做成2个系统盘
-
1、U盘插入电脑,鼠标右键点击桌面的“此电脑”,选择管理。2、然后再选择“磁盘管理”。3、找到U盘的两个分区,选择一个不需要的分区,鼠标右键点击这个分区选择“删除卷”。4、删除完之后会出现一个未分配的...
-
- 华硕bios恢复出厂设置图解(华硕bios恢复出厂设置步骤)
-
可能有些人会不知道华硕笔记本怎么恢复出厂设置,现在给你们说说:华硕笔记本开机点击F2键即可进入BIOS界面,华硕主板可开机后点击DEL键进入BIOS界面。进入BIOS界面后,可通过以下两种方式恢复BIOS出厂设置:1、点击F9键后会出现以下...
-
2025-12-22 11:51 off999
- 平板电脑选择(平板电脑选择256还是512)
-
当选择平板电脑的存储容量时,以下是一些更具体的考虑因素:1.多媒体使用:如果你经常使用平板观看高清视频、存储大量照片或下载大型游戏,那么512GB的存储容量可能更适合你。这样你就可以存储更多的媒体文...
- 电脑主板天梯图2025最新版(主板天梯图2021最新)
-
笔记本电脑CPU天梯图,笔记本电脑CPU排行,是按照CPU的跑分进行排序,进行综合性能对比。可以一定程度上反应CPU的性能优劣,方便进行笔记本电脑CPU对比。2019年的CPU天梯图,基本是Intel...
- 电脑看视频一卡一卡的是什么原因
-
回答如下:可能是以下原因导致的:1.网络带宽不足:如果您的网络速度不够快,视频会一卡一卡的,因为您的电脑需要等待缓冲完成才能播放下一段视频。2.视频格式不受支持:如果您的电脑不支持视频格式,视频可...
- qq官网下载2025最新版下载安装
-
现代ix35中控屏只需要连接WIFI就可以下载软件,下载之后再将应用安装好,就可以使用了一、电脑上下载当贝市场极速版(点击下载)到桌面上,接着拷贝到U盘里。二、在北京ix25汽车的中央控制屏上找到“设...
- 电脑玩游戏自动关机(电脑玩游戏自动关机内存条灯亮的)
-
1、解决病毒木马,修复系统受损的文件。2、检查硬件是不是有问题,重点检查主板、CPU风扇、主机电源供电情况,电源插座是不是有问题等。3、检查是不是有一些应用软件的任务完成后关机被启用了。这是可以明显的...
- 电脑重装系统从u盘启动怎么设置
-
答:第一步:老毛桃u盘制作1、准备一个老毛桃u盘启动盘制作工具,准备一个8G或以上容量的u盘。2、打开老毛桃u盘工具,确认识别u盘后,默认USB—HDD以及NTFS,点击一键制作成usb盘启动盘。3、...
- office2016密钥激活码免费(office2016密钥激活码永久)
-
word2016激活密钥有两种类型:永久激活码和KMS期限激活密钥。其中,永久激活密钥可以使用批量授权版永久激活密钥进行激活,如所示;而KMS期限激活密钥需要使用KMS客户端密钥进行激活,如所示。另外...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- 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)
