使用“for”循环迭代字典

  • 问题:
  • 我对以下代码有点困惑:

    d = {'x': 1, 'y': 2, 'z': 3} 
    for key in d:
    print key, 'corresponds to', d[key]

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

  • 答案:
  • 只是一个变量名。在

    for key in d:

    只需循环字典中的键,而不是键和值。要循环键和值,可以使用以下命令:

    对于Python 3.x:

    for key, value in d.items():

    对于Python 2.x:

    for key, value in d.iteritems():

    要自己测试,请将单词键改为poop

    类似于代码代码在代码。

    操作items()对2和3都有效,但是在2中,它将返回字典的(key,value)对的列表,这不会反映在调用items()之后对dict所做的更改。如果希望3.x中的2.x行为,可以调用list(d.items())