python中多级Json的解析

2024-10-03 13:31:11 发布

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

我有以下json:

{"sensors": 
        {"-KqYN_VeXCh8CZQFRusI": 
            {"bathroom_temp": 16,
             "date": "02/08/2017", 
             "fridge_level": 8,
             "kitchen_temp": 18, 
             "living_temp": 17, 
             "power_bathroom": 0, 
             "power_bathroom_value": 0, 
             "power_kit_0": 0
        }, 
        "-KqYPPffaTpft7B72Ow9": 
            {"bathroom_temp": 20, 
             "date": "02/08/2017", 
             "fridge_level": 19, 
             "kitchen_temp": 14, 
             "living_temp": 20, 
             "power_bathroom": 0, 
             "power_bathroom_value": 0
        },  
        "-KqYPUld3AOve8hnpnOy": 
            {"bathroom_temp": 23, 
             "date": "02/08/2017", 
             "fridge_level": 40, 
             "kitchen_temp": 11, 
             "living_temp": 10, 
             "power_bathroom": 1, 
             "power_bathroom_value": 81, 
        }
    }
}

这是到目前为止我得到的python代码:

^{pr2}$

使用当前代码,我可以查看键“KqYN_vexch8czqfrasi”、“KqYPPffaTpft7B72Ow9”等。。这些键的值是:

{"bathroom_temp": 16,
             "date": "02/08/2017", 
             "fridge_level": 8,
             "kitchen_temp": 18, 
             "living_temp": 17, 
             "power_bathroom": 0, 
             "power_bathroom_value": 0, 
             "power_kit_0": 0
        }, 

以及

 {"bathroom_temp": 20, 
         "date": "02/08/2017", 
         "fridge_level": 19, 
         "kitchen_temp": 14, 
         "living_temp": 20, 
         "power_bathroom": 0, 
         "power_bathroom_value": 0
    },  

我需要得到二级键和它们的值。我尝试为每个键创建一个文件(“浴室温度”、“电源浴室”等等),并将这些键的所有对应值保存在文件中。在

例如,文件“浴室_温度文本“将具有值“16、20、23”。在


Tags: 文件代码datevalueleveltempkitpower
1条回答
网友
1楼 · 发布于 2024-10-03 13:31:11

您可以将JSON数据放入变量中:

data = {"sensors":
        {"-KqYN_VeXCh8CZQFRusI":
            {"bathroom_temp": 16,
             "date": "02/08/2017",
             "fridge_level": 8,
             "kitchen_temp": 18,
             "living_temp": 17,
             "power_bathroom": 0,
             "power_bathroom_value": 0,
             "power_kit_0": 0
        },
        "-KqYPPffaTpft7B72Ow9":
            {"bathroom_temp": 20,
             "date": "02/08/2017",
             "fridge_level": 19,
             "kitchen_temp": 14,
             "living_temp": 20,
             "power_bathroom": 0,
             "power_bathroom_value": 0
        },
        "-KqYPUld3AOve8hnpnOy":
            {"bathroom_temp": 23,
             "date": "02/08/2017",
             "fridge_level": 40,
             "kitchen_temp": 11,
             "living_temp": 10,
             "power_bathroom": 1,
             "power_bathroom_value": 81,
        }
    }
}

然后使用嵌套索引地址获取所需参数:

^{pr2}$

相关问题 更多 >