对于任意数量的级别:
def rec_dd():
return defaultdict(rec_dd)
>>> x = rec_dd()
>>> x['a']['b']['c']['d']
defaultdict(<function rec_dd at 0x7f0dcef81500>, {})
>>> print json.dumps(x)
{"a": {"b": {"c": {"d": {}}}}}
当然,你也可以使用lambda来执行此操作,但是我发现lambda的可读性较差。无论如何,它看起来像这样:
rec_dd = lambda: defaultdict(rec_dd)