>>> a{'a': '1', 'b': '2', 'c': '3'}>>> for key in a: print(key+':'+a[key]) a:1b:2c:3>>> for key in a.keys(): print(key+':'+a[key]) a:1b:2c:3
在使用上,for key in a和 for key in a.keys():完全等价。
(2)遍历value值 >>> for value in a.values(): print(value) 123(3)遍历字典项
>>> for kv in a.items(): print(kv) ('a', '1')('b', '2')('c', '3')(4)遍历字典健值
>>> for key,value in a.items(): print(key+':'+value) a:1b:2c:3>>> for (key,value) in a.items(): print(key+':'+value) a:1b:2c:3
在使用上for key,value in a.items()与for (key,value) in a.items()完全等价
开发中经常会用到对于字典、列表等数据的循环遍历,但是python中对于字典的遍历对于很多初学者来讲非常陌生,今天就来讲一下python中字典的循环遍历的两种方式。
注意: python2和python3中,下面两种方法都是通用的。
1. 只对键的遍历一个简单的for语句就能循环字典的所有键,就像处理序列一样:
1 2 3 4 5 6 d = { 'name1' : 'pythontab' , 'name2' : '.' , 'name3' : 'com' } for key in d: print (key, ' value : ' , d[key]) name1 value : pythontab name2 value : . name3 value : com2. 对键和值都进行遍历
如果只需要值,可以使用d.values,如果想获取所有的键则可以使用d.keys。
如果想获取键和值d.items方法会将键-值对作为元组返回,for循环的一大好处就是可以循环中使用序列解包。
代码实例:
1 2 3 4 5 for key, value in d.items(): print (key, ' value : ' , value) name1 value : pythontab name2 value : . name3 value : com
注意:字典元素的顺序通常没有定义。换句话说,迭代的时候,字典中的键和值都能保证被处理,但是处理顺序不确定。如果顺序很重要的话,可以将键值保存在单独的列表中,例如迭代前进行排序。