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装饰器使用方法实例
Nov 21 Python
Python计算一个文件里字数的方法
Jun 15 Python
Python实现Logger打印功能的方法详解
Sep 01 Python
基于Python实现的ID3决策树功能示例
Jan 02 Python
python实现QQ批量登录功能
Jun 19 Python
解决Djang2.0.1中的reverse导入失败的问题
Aug 16 Python
python性能测量工具cProfile使用解析
Sep 26 Python
python实现通过队列完成进程间的多任务功能示例
Oct 28 Python
Python FFT合成波形的实例
Dec 04 Python
Python3 A*寻路算法实现方式
Dec 24 Python
用python拟合等角螺线的实现示例
Dec 27 Python
Python如何把不同类型数据的json序列化
Apr 30 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运行模式汇总
2016/11/06 PHP
PHP数组相加操作及与array_merge的区别浅析
2016/11/26 PHP
FormValidate 表单验证功能代码更新并提供下载
2008/08/23 Javascript
jquery 实现的全选和反选
2009/04/15 Javascript
HTML DOM的nodeType值介绍
2011/03/31 Javascript
JavaScript中setAttribute用法介绍
2013/07/20 Javascript
js 3种归并操作的实例代码
2013/10/30 Javascript
JS循环遍历JSON数据的方法
2014/07/08 Javascript
jquery实现可旋转可拖拽的文字效果代码
2016/01/27 Javascript
AngularJS Ajax详解及示例代码
2016/08/17 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
JavaScript中localStorage对象存储方式实例分析
2017/01/12 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
详解Vuejs2.0 如何利用proxyTable实现跨域请求
2017/08/03 Javascript
Node.js利用断言模块assert进行单元测试的方法
2017/09/28 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
vue实现与安卓、IOS交互的方法
2018/11/02 Javascript
node.js中express模块创建服务器和http模块客户端发请求
2019/03/06 Javascript
javascript实现留言板功能
2020/02/08 Javascript
[04:37]DOTA2英雄梦之声Vol20发条
2014/06/20 DOTA
[01:29]Ti4循环赛第三日精彩回顾
2014/07/13 DOTA
python如何在循环引用中管理内存
2018/03/20 Python
利用Python如何实现数据驱动的接口自动化测试
2018/05/11 Python
python 解压pkl文件的方法
2018/10/25 Python
在python下读取并展示raw格式的图片实例
2019/01/24 Python
pycharm创建一个python包方法图解
2019/04/10 Python
python制作填词游戏步骤详解
2019/05/05 Python
Pytest单元测试框架如何实现参数化
2020/09/05 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
Yummie官方网站:塑身衣和衣柜必需品
2019/10/29 全球购物
伦敦最受欢迎的蛋糕店:Konditor & Cook
2019/11/01 全球购物
Javascript如何发送一个Ajax请求
2015/01/26 面试题
会计专业大学生求职信范文
2014/01/28 职场文书
县委班子四风对照检查材料思想汇报
2014/09/29 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书