利用For循环遍历Python字典的三种方法实例


Posted in Python onMarch 25, 2022

前言

在Python中,如何使用“for”循环遍历字典?

今天我们将会演示三种方法,并学会遍历嵌套字典。

在实战前,我们需要先创建一个模拟数据的字典。

dict_1 = {'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'}

利用For循环遍历Python字典的三种方法实例

方法 1:使用 For 循环 + 索引进行迭代

在 Python 中遍历字典的最简单方法,是将其直接放入for循环中。

Python 会自动将dict_1视为字典,并允许你迭代其key键。然后,我们就可以使用索引运算符,来获取每个value值。

for key in dict_1:
    print(key, ":", dict_1[key])

利用For循环遍历Python字典的三种方法实例

如果你想按照字母顺序排列key键,可以使用sorted()方法,具体用法如下所示。

for key in sorted(dict_1):    print(key, ":", dict_1[key])

利用For循环遍历Python字典的三种方法实例

方法 2:使用 .keys( ) + 索引进行迭代

使用.keys()返回包含字典键的 Python 对象的方法,可以获得与方法1相同的结果。同样,它也需要与索引运算符结合使用。

for key in dict_1.keys():
    print(key, '-->', dict_1[key])

利用For循环遍历Python字典的三种方法实例

方法 3:使用 .items( ) 进行迭代

其实,遍历字典的最“pythonic”和优雅的方法,是使用.items()方法。

print(dict_1.items())

利用For循环遍历Python字典的三种方法实例

为了迭代transaction_data字典的键和值,您只需要“解包”嵌入在元组中的两个项目,如下所示:

for k,v in dict_1.items():
    print(k,">>",v)

利用For循环遍历Python字典的三种方法实例

需要注意,k和v只是“键”和“值”的标准别名,但你也可以选择其他命名约定。

比如,我们可以更换成a和b,也会有相同的输出。

for a,b in dict_1.items():
    print(a,"-",b)

利用For循环遍历Python字典的三种方法实例

进阶:遍历嵌套字典

有时候,我们会遇到比较复杂的字典——嵌套字典。

那么这种情况该如何办呢?

dict_2 = {"num_1":{'Name': 'Zara', 'Age': 7, 'Class': 'First','Address':'Beijing'},
          "num_2":{'Name': 'BOb', 'Age': 32, 'Class': 'Six','Address':'Shanghai'},
          "num_3":{'Name': 'Tom', 'Age': 25, 'Class': 'Second','Address':'Wuhan'}}

dict_2

利用For循环遍历Python字典的三种方法实例

为了解开属于每个嵌套字典的键值对,我们可以这样做:

for k, v in dict_2.items():
    if type(v) is dict:
        for nk, nv in v.items():
            print(nk, "→", nv)

通过if语句判断value值是不是字典,如果是,则使用前面提到的方法 3,使用 .items( ) 进行迭代输出。

运行结果如下所示。

利用For循环遍历Python字典的三种方法实例

如果只想解压其中的部分字典,可以在if语句中增加条件。

for k, v in dict_2.items():
    if type(v) is dict and k == 'num_2':
        for sk, sv in v.items():
            print(sk, "-->", sv)

只输出num_2的字典,运行结果如下所示。

利用For循环遍历Python字典的三种方法实例

以上,就是在Python中使用“for”循环遍历字典的小技巧了。

总结

到此这篇关于利用For循环遍历Python字典的三种方法的文章就介绍到这了,更多相关For循环遍历Python字典内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python动态加载模块的3种方法
Nov 22 Python
Python使用bs4获取58同城城市分类的方法
Jul 08 Python
Python和JavaScript间代码转换的4个工具
Feb 22 Python
Python基本语法经典教程
Mar 11 Python
django反向解析和正向解析的方式
Jun 05 Python
python多进程使用及线程池的使用方法代码详解
Oct 24 Python
PyQt5下拉式复选框QComboCheckBox的实例
Jun 25 Python
django一对多模型以及如何在前端实现详解
Jul 24 Python
Python学习笔记之迭代器和生成器用法实例详解
Aug 08 Python
Python箱型图处理离群点的例子
Dec 09 Python
Python数据持久化存储实现方法分析
Dec 21 Python
浅谈matplotlib默认字体设置探索
Feb 03 Python
Python装饰器详细介绍
Mar 25 #Python
python中数组和列表的简单实例
Mar 25 #Python
Python if else条件语句形式详解
python中的getter与setter你了解吗
Mar 24 #Python
Python编程中内置的NotImplemented类型的用法
Mar 23 #Python
pandas进行数据输入和输出的方法详解
Mar 23 #Python
基于Python编写简易版的天天跑酷游戏的示例代码
You might like
PHP网站建设的流程与步骤分享
2015/09/25 PHP
Joomla数据库操作之JFactory::getDBO用法
2016/05/05 PHP
ThinkPHP表单令牌错误的相关解决方法分析
2016/05/20 PHP
PHP记录和读取JSON格式日志文件
2016/07/07 PHP
CI框架AR数据库操作常用函数总结
2016/11/21 PHP
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
2020/10/28 PHP
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
2007/12/08 Javascript
jQuery学习总结之元素的相对定位和选择器(持续更新)
2011/04/26 Javascript
js实现宇宙星空背景效果的方法
2015/03/03 Javascript
如何动态加载外部Javascript文件
2015/12/02 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
jQuery的中 is(':visible') 解析及用法(必看)
2017/02/12 Javascript
老生常谈combobox和combotree模糊查询
2017/04/17 Javascript
浅谈vue项目如何打包扔向服务器
2018/05/08 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
vue-cli脚手架搭建的项目去除eslint验证的方法
2018/09/29 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
封装一下vue中的axios示例代码详解
2020/02/16 Javascript
使用TS来编写express服务器的方法步骤
2020/10/29 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
在Python的Django框架上部署ORM库的教程
2015/04/20 Python
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
2018/10/23 Python
python中hasattr()、getattr()、setattr()函数的使用
2019/08/16 Python
Python selenium抓取虎牙短视频代码实例
2020/03/02 Python
在keras中对单一输入图像进行预测并返回预测结果操作
2020/07/09 Python
PyCharm Community安装与配置的详细教程
2020/11/24 Python
非洲NO.1网上商店:Jumia肯尼亚
2016/08/18 全球购物
捷克街头、运动和滑板一站式商店:BoardStar.cz
2019/10/06 全球购物
SheIn沙特阿拉伯:女装在线
2020/03/23 全球购物
加拿大品牌鞋包连锁店:Little Burgundy
2021/02/28 全球购物
安全大检查反思材料
2014/01/31 职场文书
后备干部培训方案
2014/05/22 职场文书