使用Django应用程序的Python请求解析JSON

使用Django应用程序的Python请求解析JSON,python,django,json,python-requests,Python,Django,Json,Python Requests,解析此请求时遇到问题。看起来是这样的: {"randomnumber": {"id":blah, "name":blah, ... }, "randomnumber22": { ... }} for offer in networkoffers: # will look through keys, which are strings and not dicts networkoffers[offer]['name'] 使用python请求,我检索返回该数据的url,并对其进行解码,

解析此请求时遇到问题。看起来是这样的:

{"randomnumber": {"id":blah, "name":blah, ... }, "randomnumber22": { ... }}
for offer in networkoffers:  # will look through keys, which are strings and not dicts
    networkoffers[offer]['name']
使用python请求,我检索返回该数据的url,并对其进行解码,以便尝试在字段中循环。然后我会以这样的方式结束:

{u'randomnumber': {u'id':u'blah', ... }, u'randomnumber22': { .. }}
当我尝试使用for循环遍历数据时,它抱怨我需要使用数字作为字符串索引。我怎样才能妥善处理这个问题

我的简化代码:

import requests
network = requests.get('http://example.com')
networkoffers = network.json()
for offers in networkoffers:
    offer['name']

因此,我尝试访问网络['randomnumber']['name'],以我的请求数据的初始示例为例。

您正在迭代dict的密钥,因此您需要在
for
循环中对此进行说明,如下所示:

{"randomnumber": {"id":blah, "name":blah, ... }, "randomnumber22": { ... }}
for offer in networkoffers:  # will look through keys, which are strings and not dicts
    networkoffers[offer]['name']
networkoffers
是一个
dict
,而
offers
(或
offer
,注意差异)是一个键(一个
字符串
offers['name']
对Python来说没有任何意义,因为offers是一个字符串。但是
networkoffers[offers]
是一个dict(值
networkoffers