Python开发基础入门之理解Python中的字典数据类型
小职 2021-06-18 来源 :IT共享之家 阅读 410 评论 0

摘要:本文主要介绍了Python开发基础入门之理解Python中的字典数据类型,通过具体的内容向大家展现,希望对大家Python程序开发的学习有所帮助。

本文主要介绍了Python开发基础入门之理解Python中的字典数据类型,通过具体的内容向大家展现,希望对大家Python程序开发的学习有所帮助。

Python开发基础入门之理解Python中的字典数据类型

 

一、前言

字典是Python中的数据类型,可让将数据存储在键/值对中。

 

二、什么是字典理解?

字典理解是创建字典的一种优雅简洁的方法。

 

字典理解优化

使用字典理解优化函数。

 

例:

 

# 字典理解例:

square_dict = {num: num*num for num in range(1, 11)}

print(square_dict)

运行结果:

 Python开发基础入门之理解Python中的字典数据类型

 

 

注·:

 

创建了square_dict带有数字平方键/值对的字典。但是,使用字典理解可以使在一行中创建字典。

 

三、使用字典理解

字典理解的最小语法为:

 

dictionary = {key: value for vars in iterable}

1. 图解析语法

让将此语法与上例中的字典理解进行比较。

 Python开发基础入门之理解Python中的字典数据类型

 

 

2. 案例

如何使用字典理解

 

例:

 

#item price in dollars

old_price = {'milk': 1.02, 'coffee': 2.5, 'bread': 2.5}

 

dollar_to_pound = 0.76

new_price = {item: value*dollar_to_pound for (item, value) in old_price.items()}

print(new_price)

输出结果

 Python开发基础入门之理解Python中的字典数据类型

 

 

注:

 

可以看到以美元为单位检索商品价格并将其转换为英镑。使用字典理解使此任务更加简单和短。

 

四、字典理解中的条件

可以通过添加条件来进一步自定义字典理解。让来看一个实例。

 

案例

 

1. 如果条件字典理解

例:

 

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)

输出结果

 Python开发基础入门之理解Python中的字典数据类型

 

 

可以看到,由于if字典理解中的子句,仅添加了具有偶数值的项目。

 

2. 多重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)

输出结果

 Python开发基础入门之理解Python中的字典数据类型

 

 

在这种情况下,仅奇数值小于40的项目已添加到新字典中。

 

这是因为if字典理解中有多个子句。等效于and必须同时满足两个条件的操作。

 

3. 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)

输出结果

 Python开发基础入门之理解Python中的字典数据类型

 

 

在这种情况下,将通过子典理解来创建新字典。

 

价值大于等于40的商品的值为“old”,而其他商品的值为“young”。

 

五、嵌套字典理解

可以将字典理解本身添加到字典理解中以创建嵌套字典。

 

案例

 

具有两个字典理解的嵌套字典

例:

 

dictionary = {

    k1: {k2: k1 * k2 for k2 in range(1, 6)} for k1 in range(2, 5)

}

print(dictionary)

输出结果

 Python开发基础入门之理解Python中的字典数据类型

 

 

注:

 

在嵌套字典中构造了一个乘法表,用于2到4的数字。每当使用嵌套字典理解时,Python都会首先从外部循环开始,然后再进入内部循环。

 

六、使用字典理解的优势

如所见,字典理解大大缩短了字典初始化的过程。

 

它使代码更具pythonic风格,在的代码中使用字典理解可以缩短代码行,同时保持逻辑完整。

 

七、总结

本文基于Python基础,介绍了如何使用字典。通过分类对每一模块,进行详细的讲解。使用图解析语法,实例代码演示,运行效果图的展示,能够帮读者更好的理解。

 

在实际案例中遇到的问题,提供了一些有效的解决方案。使用Python语言,能够更直观的,加深读者对内容的理解。

 

代码很简单,希望能够帮助你更好的学习。


我是小职,记得找我

✅ 解锁高薪工作

✅ 免费获取基础课程·答疑解惑·职业测评

Python开发基础入门之理解Python中的字典数据类型

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程