我在python中有一个大的嵌套JSON,我已经将其转换为字典。在其中,在某些子字典中有一个名为"成就"的关键字(不知道它嵌套了多远)。此子字典本身要么是列表的元素,要么是更大字典中的键值。
假设我只知道这把钥匙叫"成就",我怎么知道它的值?我们可以假设钥匙的"成就"名称在所有关卡的整个字典中都是唯一的。
您可以使用JSONPath很容易地在json中找到这个和几乎任何类型的搜索路径。参考jsonpath-ng
库的例子
在您的情况下,JSONPath$..achievements
将提供您所需要的。
PS:虽然你完全可以编写递归函数来搜索字典,但JsonPath允许你编写更复杂的查询,检索多个结果等,并且是一个更强大的工具。