from collections import defaultdict def rec_dd(): return defaultdict(rec_dd) d = rec_dd() d['a']['b']['c'] = 'd' # default list from collections import defaultdict d = defaultdict(list) d['some key'].append('new element')