Python实现字典(dict)的迭代操作示例


Posted in Python onJune 05, 2018

本文实例讲述了Python实现字典(dict)的迭代操作。分享给大家供大家参考,具体如下:

#!/usr/bin/python
# -*- coding:utf-8 -*-
#! python2
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
# 迭代dict的键
for x in d.keys():
  print x
# 也可以采用这种方式迭代
for x in d.iterkeys():
  print x
# 迭代dict的值
for x in d.values():
  print x
for x in d.itervalues():
  print x
# 迭代键值对
for k, v in d.items():
  print k, ":", v
for k, v in d.iteritems():
  print k, ":", v
'''''
上述代码中,对键值或者是键值对迭代的方法都有两种,
以values和itervalues为例,
说明这两种方式的区别
1. values() 方法实际上把一个 dict 转换成了包含 value 的list。
2. 但是 itervalues() 方法不会转换,它会在迭代过程中依次从 dict 中取出 value,
所以 itervalues() 方法比 values() 方法节省了生成 list 所需的内存。
3. 打印 itervalues() 发现它返回一个 <dictionary-valueiterator> 对象,这说明在Python中,
for 循环可作用的迭代对象远不止 list,tuple,str,unicode,dict等,
任何可迭代对象都可以作用于for循环,而内部如何迭代我们通常并不用关心
print d.itervalues()
# <dictionary-valueiterator object at 0x0137F8A0>
关于迭代
如果一个对象说自己可迭代,那我们就直接用 for 循环去迭代它,可见,迭代是一种抽象的数据操作,
它不对迭代对象内部的数据有任何要求。
'''

运行结果:

Lisa
Paul
Adam
Bart
Lisa
Paul
Adam
Bart
85
74
95
59
85
74
95
59
Lisa : 85
Paul : 74
Adam : 95
Bart : 59
Lisa : 85
Paul : 74
Adam : 95
Bart : 59

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中wx将图标显示在右下角的脚本代码
Mar 08 Python
Python中的Numeric包和Numarray包使用教程
Apr 13 Python
python下os模块强大的重命名方法renames详解
Mar 07 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
利用python实现简易版的贪吃蛇游戏(面向python小白)
Dec 30 Python
python实现批量注册网站用户的示例
Feb 22 Python
python中matplotlib条件背景颜色的实现
Sep 02 Python
python 3.7.4 安装 opencv的教程
Oct 10 Python
Django认证系统user对象实现过程解析
Mar 02 Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 Python
keras中模型训练class_weight,sample_weight区别说明
May 23 Python
openCV提取图像中的矩形区域
Jul 21 Python
python矩阵转换为一维数组的实例
Jun 05 #Python
python验证码识别教程之利用滴水算法分割图片
Jun 05 #Python
django反向解析URL和URL命名空间的方法
Jun 05 #Python
python topN 取最大的N个数或最小的N个数方法
Jun 04 #Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 #Python
numpy中以文本的方式存储以及读取数据方法
Jun 04 #Python
浅谈python中np.array的shape( ,)与( ,1)的区别
Jun 04 #Python
You might like
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
BOOM vs RR BO5 第三场 2.14
2021/03/10 DOTA
jQuery的.live()和.die() 使用介绍
2011/09/10 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
js实现二级菜单渐隐显示
2015/11/03 Javascript
JS面向对象编程详解
2016/03/06 Javascript
使用JS实现图片展示瀑布流效果的实例代码
2016/09/12 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
Bootstrap基本组件学习笔记之分页(12)
2016/12/08 Javascript
TypeScript学习之强制类型的转换
2016/12/27 Javascript
Webpack+Vue如何导入Jquery和Jquery的第三方插件
2017/02/20 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
Angular 4依赖注入学习教程之FactoryProvider配置依赖对象(五)
2017/06/04 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
2017/06/12 jQuery
Vue学习笔记进阶篇之过渡状态详解
2017/07/14 Javascript
AngularJS中下拉框的基本用法示例
2017/10/11 Javascript
jQuery提示框插件SweetAlert用法分析
2019/08/05 jQuery
layui扩展上传组件模拟进度条的方法
2019/09/23 Javascript
[43:51]2014 DOTA2国际邀请赛中国区预选赛 Dream Times VS TongFu
2014/05/22 DOTA
Python生成器(Generator)详解
2015/04/13 Python
python3实现UDP协议的服务器和客户端
2017/06/14 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
2018/04/02 Python
在 Linux/Mac 下为Python函数添加超时时间的方法
2020/02/20 Python
如何在Python 游戏中模拟引力
2020/03/27 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
使用python tkinter开发一个爬取B站直播弹幕工具的实现代码
2021/02/07 Python
Html5实现移动端、PC端 刮刮卡效果
2016/06/30 HTML / CSS
教师专业理论水平的自我评价分享
2013/11/09 职场文书
观看《永远的雷锋》心得体会
2014/03/12 职场文书
给老婆的检讨书1000字
2015/01/01 职场文书
学校实习推荐信
2015/03/27 职场文书
预备党员考察表党小组意见
2015/06/01 职场文书
2015年小学重阳节活动总结
2015/07/29 职场文书
《植树问题》教学反思
2016/03/03 职场文书
Android Studio 计算器开发
2022/05/20 Java/Android
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS