我有一个样本json
数据,它是来自POST
请求的响应-response
是以下样本json
数据变量的名称:
{
"statusCode": "OK",
"data": [
{
"id": -199,
"result": {
"title": "test1",
"group": "test_grp2"
}
},
{
"id": -201,
"result": {
"title": "test2",
"group": "test_grp2"
}
}
]
}
现在我要做的是形成一个list of list
,其中每个列表都有来自上述json
数据的id
、title
和group
值。下面是我的代码:
def get_list():
# code to get the response from POST request
json_data = json.loads(response.text)
group_list = []
if json_data['statusCode'] == 'OK':
for data in json_data['data']:
print(data)
for result_data in data['result']:
title = result_data['title']
group = result_data['group']
group_list.append([data['id'],title,group])
return(group_list)
当我执行这个命令时,在第title = result_data['title]
行得到的错误是list indices must be int not str
。我怎样才能形成上面的列表呢?你知道吗
您可以使用列表理解直接提取列表列表:
data['result']
在您的例子中是一个字典。当您使用for result_data in data['result']
对其进行迭代时,会得到键—换句话说,result_data
是一个字符串,它不支持字符串索引。你知道吗相反,你的意思是:
或者,您也可以使用list comprehension:
相关问题 更多 >
编程相关推荐