Python键值错误(Json)

2024-05-08 18:48:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图抓住这个数据和打印成一个字符串的文本我有最坏的!让它工作的问题。你知道吗

这是我的来源,以获得更好的理解,我在一个环境控制器和我的sonoff开关组合工作 https://github.com/FirstCypress/LiV/blob/master/software/liv/iotConnectors/sonoff/sonoff.py这段代码一完成就可以工作两页,所以忽略temputure等的键

    m = json.loads(content)
co2  = m["Value"]

我需要“TaskValues”下的“value”值它应该是1或0在几乎任何情况下,我如何以正确的形式提取该键?你知道吗

"Sensors":[
{
"TaskValues": [
{"ValueNumber":1,
"Name":"Switch",
"NrDecimals":0,
"Value":0
}],
"DataAcquisition": [
{"Controller":1,
"IDX":0,
"Enabled":"false"
},
{"Controller":2,
"IDX":0,
"Enabled":"false"
},
{"Controller":3,
"IDX":0,
"Enabled":"false"
}],
"TaskInterval":0,
"Type":"Switch input - Switch",
"TaskName":"relias",
"TaskEnabled":"true",
"TaskNumber":1
}
],
"TTL":60000
}

Tags: 数据字符串https文本false环境value来源
2条回答

"Value"嵌套在json中,如您所述。要获得所需的内容,需要遍历父数据结构:

m = json.loads(content)
# This is a list
a = m.get('Sensors')

# This is a dictionary
sensor = a[0]

# This is a list
taskvalue = sensor.get('TaskValues')

# Your answer
value = taskvalue[0].get('Value')

你能搞定的

 m['Sensors'][0]['TaskValues'][0]['Value']

相关问题 更多 >