如何使用提供的键列表以递归方式创建字典的字典

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

例如:

在迭代键列表时需要创建一个字典的字典

例如,我有这个清单

my_dict = {'root': {}}
my_keys = ['foo', 'bar', 'lorem', 'ipsum']

我想创建一个函数来返回以下字典

my_dict = {
    'root': {
        'foo': {
            'bar': {
                'lorem': {
                    'ipsum': {}
                }
            }
        }
    }
}

我想使用递归,但我陷入了逻辑。

python logic
2个回答
1
投票
cur_level = my_dict["root"]
for key in my_keys:
    cur_level[key] = {}
    cur_level = cur_level[key]

1
投票

具有

dict.setdefault
功能:

curr_d = my_dict['root']
for k in my_keys:
    curr_d = curr_d.setdefault(k, {})
© www.soinside.com 2019 - 2024. All rights reserved.