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

yipeiwu_com6年前Python基础

本文实例讲述了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列表(list)操作技巧总结》、《Python数据结构与算法教程》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

相关文章

Python pickle模块用法实例

python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过pickle模块的反序列化操作,...

对于Python中RawString的理解介绍

总结 1、'''作用: 可以表示 "多行注释" 、"多行字符串" 、"其内的单双引号不转义" 2、r 代表的意思是: raw 3、r 只对其内的反斜杠起作用(注意单个 \ 的问题) ra...

详解Python字符串对象的实现

详解Python字符串对象的实现

PyStringObject 结构体 Python 中的字符串对象在内部对应一个名叫 PyStringObject 的结构体。“ob_shash” 对应字符串经计算过的 hash值, “...

python 将列表中的字符串连接成一个长路径的方法

今天实习公司分配了一个数据处理的任务。在将列表中的字符串连接成一个长路径时,我遇到了如下问题: import os path_list = ['first_directory',...

Python实现队列的方法

本文实例讲述了Python实现队列的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python queue = [] def enQ():...