【发布时间】:2019-11-30 18:49:50
【问题描述】:
当我要查找的内容有多个“节点”时,我能够解析 json 响应,但是当 API 仅返回一个节点时,我收到消息“字符串索引必须是整数”。 这是我的代码,我在使用 json.loads() 从字符串转换后传入字典:
import requests, requests.auth
import json
import os
def parseSchedule(dict):
i = 0
for item in dict['reservations']['reservation']:
print(item['event_start_dt'])
i += 1
我已经简化了 json 响应以表明这是可行的:
{
"reservations": {
"reservation": [{
"event_start_dt": "2019-11-27T12:40:00-08:00"
}, {
"event_start_dt": "2019-11-27T16:10:00-08:00"
}]
}
}
虽然这会引发错误“字符串索引必须是整数”:
{
"reservations": {
"reservation": {
"event_start_dt": "2019-11-26T08:30:00-08:00"
}
}
}
我研究了 .items() ,我在其中尝试了键和值,但到目前为止还没有成功。
【问题讨论】:
-
但在第二种情况下,您不需要循环,只需
dict['reservations']['reservation']['event_start_dt']。 -
实际上我确实需要一个循环,因为我不知道每天我会得到多少回报——有时只有一个,但很可能是多个回报..
-
拥有一个有时是列表有时是字典的数据结构是没有意义的。
-
@ProgrammerBret 我的回答对你有用吗?
-
确实——非常感谢
标签: python json python-requests python-responses