Python 如何遍历json对象

Python 如何遍历json对象,python,json,Python,Json,我的问题分为两部分 我有一个json文件: "result": [ { "id": "12345678", "label": "Target Label", "hostName": "www.example.com", "location": "Seattle, WA", "locationid": "9",

我的问题分为两部分

我有一个json文件:

"result": [
             {
               "id": "12345678",
               "label": "Target Label",
               "hostName": "www.example.com",
               "location": "Seattle, WA",
               "locationid": "9",
               "targetType": "PING basic",
               "frequency": "5",
               "statusCode": "UP",
               "statusMessage": "OK",
               "fails": "0",
               "responseTime": "0.136",
               "dnsTime": "0.000",
               "connectTime": "0.136",
               "redirectTime": "0.000",
               "firstbyteTime": "0.000",
               "lastbyteTime": "0.000",
               "lastCheck": "15:43 12-05-2017",
               "lastDown": "21:34 11-17-2017",
               "pingLoss": "0.00",
               "pingMin": "136.357",
               "pingAvg": "136.597",
               "pingMax": "137.049"
             }
           ]
问题1:假设json文件包含N个“result”

如何在循环中访问json结果

我这样做是为了从单个结果访问:

data = {}
data['PublisherMessage'] = data_dict['result'][0]['statusMessage']
如何在具有多个结果的循环中访问json结果

问题2:


我如何在循环中创建dictionary以将其分配给我将在循环中获取的json结果?

假设您有
data\u dict
,其唯一条目是
data\u dict['result']
,那么这是一个您可以迭代的列表:

for item in data_dict['result']:
    # do something with item['statusMessage'] etc

您可以使用for循环,如
for result in data.\u dict['result']
顺便说一句,您拥有的不是
json
。你的意思是:
{“result”:[…]}
?我在这里主要尝试的是读取具有多个结果对象的json文件,并将其映射到具有多个dict的格式。我希望将整个功能放在一个循环中,现在我了解了如何读取多个结果对象。现在我的问题是如何在循环中创建一个dict并映射那些多结果objectdata={}data['PublisherMessage']=data_dict['result'][0]['statusMessage']data['publisherCritivity']=critivity_code data['PublisherStatus']=data_dict['result'][0]['statusCode']data['CorrelationID']=None data['IP']=None data['CIName']=data_dict['result'][0]['hostName']data['PublisherTimestamp']=datetime.strtime(data_dict['result'][0]['lastDown'],“%H:%M%M-%d-%Y”).isoformat()以open(“data_post.json”,“w”)作为write_文件:json.dump(data,write_文件,indent=4)这就是我目前正在做的事情