I feel like I saw a way to do this recently. Say I’ve got an empty dict and I want to set a value in a nested dict inside that empty dict, but obviously that nested dict hasn’t been created yet. Is there a 1-line way to create the intermediate keys? This is what I want to do:
mydict = {}
mydict['foo']['bar']['foobar'] = 25
If you execute this code you’ll get a KeyError exception for ‘foo’. Is there a function to create intermediate keys?
Thanks.
When you access
mydict['foo'], it setsmydict['foo']to anotherrecursivedict. It’ll actually construct arecursivedictformydict['foo']['bar']['foobar']as well, but then it’ll get thrown out by assigning that to25.