How to iterate through a nested dict?
dictionary, python
Solution
As the requested output, the code goes like this
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
In place of `iteritems()` you can use `items()` as well, but `iteritems()` is much more efficient and returns an iterator.
Hope this helps :)
Problem
I have a nested `python dictionary` data structure. I want to read its keys and values `without` using `collection` module. The data structure is like bellow. ``` d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}} ``` I was trying to read the keys in the dictionary using the bellow way but getting error. Code ``` for key, value in d: print(Key) ``` Error ``` ValueError: too many values to unpack (expected 2) ``` So can anyone please explain the reason behind the error and how to iterate through the dictionary.