内容来自 DOC[ https://q.houxu6.top/?s=使用 'for' 循环遍历字典](https://q.houxu6.top/?s=使用 'for' 循环遍历字典)
d = {'x': 1, 'y': 2, 'z': 3}
for key in d:
print(key, '对应于', d[key])
Python如何知道它只需要从字典中读取key
?key
是一个特殊的关键字吗,还是只是一个变量?
在Python中,key
不是特殊的关键字,而只是一个变量名。在这个例子中,key
被用作循环迭代的对象,每次迭代时,key
会依次取d
字典中的每个键的值。然后使用d[key]
来获取该键对应的值,并打印出来。因此,Python可以通过循环迭代对象的方式来访问字典的键和对应的值。
key
只是一个变量名。
for key in d:
只会遍历字典中的键,而不是键和值。要同时遍历键和值,可以使用以下代码:
对于Python 3.x:
for key, value in d.items():
对于Python 2.x:
for key, value in d.iteritems():
要测试一下,可以将单词key
改为poop
。
在Python 3.x中,iteritems()
被简单地替换为items()
,它返回一个由字典支持的类似集合的视图,就像iteritems()
一样,但更好。这个函数在2.7中也有提供,名为viewitems()
。
操作items()
可以在2和3中使用,但在2中它将返回一个包含字典的(key, value)
对的列表,该列表不会反映在items()
调用之后的字典更改。如果您想在3.x中获得2.x的行为,可以调用list(d.items())
。