gpt4 book ai didi

python - 动态地在字典中设置一个值

转载 作者:行者123 更新时间:2023-12-04 13:32:23 24 4
gpt4 key购买 nike

如果我有一个嵌套的字典 d = {'a':{'b':{}}}和一个字符串 'a.b.c'和一个值 'X'
我需要根据键字符串将值放入字典中。

我想要实现的可以硬编码为 d['a']['b']['c'] = 'X'但我需要动态地做。 key 串可以是任意长度。

对于奖励积分:如果 key 不存在,我还需要创建 key ,例如 'a.b.z'但我相信我能弄清楚如果我能解决它们已经存在的情况。

最佳答案

def set(d, key, value):
dd = d
keys = key.split('.')
latest = keys.pop()
for k in keys:
dd = dd.setdefault(k, {})
dd.setdefault(latest, value)

d = {}
set(d, 'a.b.c', 'X')
set(d, 'a.b.d', 'Y')
print(d)

结果:
{'a': {'b': {'c': 'X', 'd': 'Y'}}}

关于python - 动态地在字典中设置一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21297475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com