gpt4 book ai didi

python - 修改字典中的嵌套值

转载 作者:行者123 更新时间:2023-12-01 09:34:36 25 4
gpt4 key购买 nike

考虑如下所示的字典:

"Title": {
"Label-1": {
"sublabel-1": {
"item1": {},
"item2": {}
},
"sublabel-2": {
"item3": {},
"item4": {},
"item5": {}
}
}
"Label-2": {
"sublabel-1": {
"item6": {},
"item7": {},
"item8": {},
}
}
}

这是一个字典,用于修改一些键值对,如下所示。

values_to_add={item1:a,item2:b}

目标是将值 a 和 b 添加到字典中的相应键。

作为引用,我阅读了以下帖子:

1. First Reference:(不同之处在于,我只有要修改的键值对,而不是更新变量中给出的键值对的详细跟踪。)

2. Second Reference:(不幸的是,这个问题没有后续。)

一些补充要点:

  1. 词典的级别和深度可能会有所不同。大多数时候,主要焦点是向任何子标签的最里面的键添加值。(在本例中为 item1 和 item2)

  2. 使用 python 2 操作字典。

我目前正在尝试创建一个程序来解决这个问题。希望能够获得有关解决问题的不同方法的一些见解并学习新的东西。

最佳答案

看起来您的数据结构反射(reflect)了您想要输出数据的方式,这使更新过程变得复杂。

推迟嵌套字典的构建。相反,设置一个仅包含叶键和上级键作为数据的字典:

{
"item1": {'path': ("Title","Label-1","sublabel-1"), "values":{} },
"item2": {'path': ("Title","Label-1","sublabel-1"), "values":{} },
"item3": {'path': ("Title","Label-1","sublabel-2"), "values":{} },
"item4": {'path': ("Title","Label-1","sublabel-2"), "values":{} },
"item5": {'path': ("Title","Label-1","sublabel-2"), "values":{} },
"item6": {'path': ("Title","Label-2","sublabel-1"), "values":{} },
"item7": {'path': ("Title","Label-2","sublabel-1"), "values":{} },
"item8": {'path': ("Title","Label-2","sublabel-1"), "values":{} },
}

完成后,您可以迭代它并构造您想要的嵌套结构。这还允许您轻松地适应不同长度的关键路径,否则这将导致非常复杂的访问方法。

这当然假设您的叶键是唯一的。这也隐含在你的问题中。但在我看来,这在实践中确实是一个不太可能的假设。

关于python - 修改字典中的嵌套值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49645763/

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