本文实例讲述了Python实现字典(dict)的迭代操作。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
#!/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程序设计有所帮助。
原文链接:https://blog.csdn.net/you_are_my_dream/article/details/53160354