我从 API 获取 JSON 数据。数据集很大并且是嵌套的。我可以Datenreihen这样访问密钥:
jsondata.get("Ergebnis")[0].get("Kontakte").get("Datenreihen")
正如您所看到的,这是字典和列表的混合体。
我尝试了以下方法,但对于列表不起作用:-(。
def recursive_lookup(k, d):
if k in d:
return d[k]
for v in d.values():
if isinstance(v, dict):
return recursive_lookup(k, v)
return None
# Works
recursive_lookup("Ergebnis", jsondata)
# Returns None
recursive_lookup("Datenreihen", jsondata)
无论我的对象嵌套多深,是否有一种简单的方法可以访问和键入我的字典?
这是示例数据:
{
"Success":true,
"Ergebnis":[
{
"ErgA1a: KPI Zeitreihe":{
"Message":"",
"MitZielgruppe":true,
"Beschriftung":[
"2019 KW 27",
"2019 KW 28",
"2019 KW 29"
],
"Datenreihen":{
"Gesamt":{
"Name":"Sympathie [#4]\n(Sehr sympathisch, Sympathisch)",
"Werte":[
39.922142815641145,
37.751410794385762,
38.35504885993484
]
}
}
}
}
],
"rest":[
{
"test":"bla"
}
]
}
data.get("ErgebnisseAnalyse")[0].get("ErgA1a: KPI Zeitreihe")
recursive_lookup("ErgA1a: KPI Zeitreihe", data)
茅侃侃
相关分类