小编典典

如何遍历嵌套字典?

python

我有一个嵌套的python dictionary数据结构。我想without使用collection模块读取其键和值。数据结构像下面这样。

d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}}

我试图使用波纹管方式读取字典中的键,但出现错误。

for key, value in d:
    print(Key)

错误

ValueError: too many values to unpack (expected 2)

所以任何人都可以解释错误的原因以及如何遍历字典。


阅读 220

收藏
2020-12-20

共1个答案

小编典典

作为请求的输出,代码如下所示

    d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}}

    for k1,v1 in d.iteritems(): # the basic way
        temp = ""   
        temp+=k1
        for k2,v2 in v1.iteritems():
           temp = temp+" "+str(k2)+" "+str(v2)
        print temp

代替iteritems()您也可以使用items(),但是iteritems()效率更高并且返回迭代器。

希望这可以帮助 :)

2020-12-20