在Python中使用for循环迭代字典

0 投票
最新提问 4月 17 分类:Python | 用户: Amanda (220 分)

我对下面的代码有点疑惑:

d = {'x': 1, 'y': 2, 'z': 3} 
for key in d:
    print key, '对应于', d[key]

我不明白的key部分。Python如何识别它?只需要从字典中读取密钥?key是Python中的一个特殊单词吗?还是只是一个普通变量?

1个回答

0 投票
最新回答 6月 5 用户: 宁静致远 (340 分)

在这里,“key”只是一个变量名。

for key in d:

将简单地循环字典中的键,而不是键和值。要循环键和值,您可以使用以下内容:

对于Python 2.x:

for key, value in d.iteritems():

对于Python 3.x:

for key, value in d.items():

为了测试一下,可将key改为任何其它变量。

在Python 3.x中,iteritems()已经被简单地替换成了items(),它返回了一个类似于视图的字典,但是iteritems()更好,也可以在2.7中使用viewitems()。

items()操作同时适用于2和3,但在2中将返回字典(key, value)对的列表,这不会反映items()调用后发生的dict的更改。如果想要3.x中的2.x行为,可以调用list(d.items())。

欢迎来到编程助手,编程方面有什么不懂的问题可以尽管在这里提问,你将会收到热心爱好者的回答。
...