Json 如何访问类Dict类型中的数据?

Json 如何访问类Dict类型中的数据?,json,python-3.5,Json,Python 3.5,我正在尝试使用json格式的特定天气数据,并使用Python3脚本访问数据的某些部分。实际数据还不能在线获取,所以我使用的是提供的json格式的示例。以下是json文件内容: "observations": [{ "stationID": "KNCCARY89", "obsTimeUtc": "2019-02-04T14:53:14Z", "obsTimeLocal": "2019-02-04 09:53:14", "nei

我正在尝试使用json格式的特定天气数据,并使用Python3脚本访问数据的某些部分。实际数据还不能在线获取,所以我使用的是提供的json格式的示例。以下是json文件内容:

    "observations": [{
        "stationID": "KNCCARY89",
        "obsTimeUtc": "2019-02-04T14:53:14Z",
        "obsTimeLocal": "2019-02-04 09:53:14",
        "neighborhood": "Highcroft Village",
        "softwareType": "GoWunder 1337.9041ac1",
        "country": "US",
        "solarRadiation": 436.0,
        "lon": -78.8759613,
        "realtimeFrequency": null,
        "epoch": 1549291994,
        "lat": 35.80221176,
        "uv": 1.2,
        "winddir": 329,
        "humidity": 71,
        "qcStatus": 1,
        "imperial": {
            "temp": 53,
            "heatIndex": 53,
            "dewpt": 44,
            "windChill": 53,
            "windSpeed": 2,
            "windGust": null,
            "pressure": 30.09,
            "precipRate": 0.0,
            "precipTotal": 0.0,
            "elev": 413
        }
    }]
}
下面是我用来从我的Raspberry上的一个文件访问此示例json数据的简单python脚本:

import json
from pprint import pprint

with open('data.json') as f:
    weather = json.load(f)

pprint(weather)

数据打印得很好,但我一直在努力使用嵌入式数据

当我查询类型时,答案是

唯一有效的查询是pprintweather['observations'],它显示了'observations'下面的所有json数据,但我不知道如何降低这个值


我是否必须将数据转换为其他“类型”

weather['observations']似乎是一个数组,上面的JSON中只有一个元素。在Python中,weather['observations']应该是一个列表,要访问它的第一个元素,您可以编写

weather['observations'][0]
由此,您应该能够访问子元素,例如

weather['observations'][0]['stationID']

这个答案很有帮助。我一直在努力处理“imperial”下的嵌套项,直到我意识到这只是天气['observations'][0]['stationID']['temp]