利用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实现示例
Aug 26 Python
python3爬取各类天气信息
Feb 24 Python
用Python将一个列表分割成小列表的实例讲解
Jul 02 Python
python 对txt中每行内容进行批量替换的方法
Jul 11 Python
不知道这5种下划线的含义,你就不算真的会Python!
Oct 09 Python
python利用pandas将excel文件转换为txt文件的方法
Oct 23 Python
Python中使用遍历在列表中添加字典遇到的坑
Feb 27 Python
通过 Django Pagination 实现简单分页功能
Nov 11 Python
详谈tensorflow gfile文件的用法
Feb 05 Python
Python调用系统命令os.system()和os.popen()的实现
Dec 31 Python
Pytorch1.5.1版本安装的方法步骤
Dec 31 Python
pycharm配置QtDesigner的超详细方法
Jan 25 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代码
2006/12/06 PHP
PHP 事务处理数据实现代码
2010/05/13 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
2014/08/25 PHP
BOOM vs RR BO5 第二场 2.14
2021/03/10 DOTA
JavaScript学习笔记(十七)js 优化
2010/02/04 Javascript
如何用ajax来创建一个XMLHttpRequest对象
2012/12/10 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
有关于eclipse配置spket需要注意的一些地方
2013/04/07 Javascript
jQuery知识点整理
2015/01/30 Javascript
jquery仅用6行代码实现滑动门效果
2015/09/07 Javascript
JavaScript实现简单精致的图片左右无缝滚动效果
2017/03/16 Javascript
用angular实现多选按钮的全选与反选实例代码
2017/05/23 Javascript
JavaScript队列函数和异步执行详解
2017/06/19 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
2017/07/11 jQuery
JS简单获得节点元素的方法示例
2018/02/10 Javascript
原生js实现拖拽功能基本思路详解
2018/04/18 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
python字符串连接方式汇总
2014/08/21 Python
Python中用memcached来减少数据库查询次数的教程
2015/04/07 Python
python回调函数中使用多线程的方法
2017/12/25 Python
使用TensorFlow实现二分类的方法示例
2019/02/05 Python
python opencv摄像头的简单应用
2019/06/06 Python
Python+pyplot绘制带文本标注的柱状图方法
2019/07/08 Python
Django中密码的加密、验密、解密操作
2019/12/19 Python
Python如何对齐字符串
2020/07/30 Python
手摸手教你用canvas实现给图片添加平铺水印的实现
2019/08/20 HTML / CSS
波兰数码相机及配件网上商店: Cyfrowe.pl
2017/06/19 全球购物
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
日本最佳原创设计品牌:Felissimo(芬理希梦)
2019/03/19 全球购物
小学毕业感言150字
2014/02/05 职场文书
党委书记个人对照检查材料
2014/09/15 职场文书
2014年平安建设工作总结
2014/11/19 职场文书
入党函调证明材料
2014/12/24 职场文书
创业计划之特色精品店
2019/08/12 职场文书
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL