如何快速分配Python dict链? [重复]

问题描述 投票:0回答:2

假设我要分配:

my_dict={}
my_dict['a'] = {}
my_dict['a']['b'] = {}
my_dict['a']['b']['c'] = 'd'

有没有快速的方法来做到这一点?像

my_dict['a']['b']['c']='d'
之类的东西?

python
2个回答
1
投票

您可以使用递归默认字典来执行此操作:

from collections import defaultdict

def tree():
    def the_tree():
        return defaultdict(the_tree)
    return the_tree()

将树包装在闭包(“私有”本地函数作用域)中非常重要。如果

tree
名称被反弹或删除,这可以防止现有实例被破坏。


1
投票
mydict = {'a':{'b':{'c':'d'}}}
© www.soinside.com 2019 - 2024. All rights reserved.