【发布时间】:2014-02-03 18:44:36
【问题描述】:
我有 JSON 数据,我想解析它。
我使用了下面的代码:
def json_update(request):
j = urllib2.urlopen('http://ec2-72-44-51-113.compute-1.amazonaws.com:8001/get_latest_verification')
j_obj = json.load(j)
print j_obj.status
return HttpResponse(j_obj.status)
但我得到了错误:
/json_update 处的 AttributeError
'list' 对象没有属性 'status'
我的 json 数据:
[{"status": "Registered", "credential": "10000323xsds", "scan_time": "Jan.15,2014, 03:30 pm", "asset_code": "cls103", "emp_id": "LS07", "location": "BLR-10", "auth_code": "DSC(Verisign", "operator": "pradeep", "id": 538}]
解析json数据的正确方法是什么。
但是当我将代码更新为:
更新代码:
def json_update(request):
j = urllib2.urlopen('http://ec2-72-44-51-113.compute-1.amazonaws.com:8001/get_latest_verification')
j_obj = json.load(j)
for jo in j_obj:
print j_obj[jo]['status']
return HttpResponse(j_obj[jo]['status'])
我收到错误:
/json_update 处的类型错误
列表索引必须是整数,而不是字典
【问题讨论】:
-
问题不在于 json 解析。如果你做了 j_obj[0]['status'] 那么它会工作得很好。