我想通过 python 遍历下面显示的 json,以便将对象中的每个项目填充到我的数据库中:[{ 'description': 'DP WORLD', 'displaySymbol': '3DW.HM', 'symbol': '3DW.HM'}, { 'description': 'SPDR Series Trust - SPDR S&P 600 Small Cap Value ETF', 'displaySymbol': '4JZ3.HM', 'symbol': '4JZ3.HM'}, { 'description': 'DGH Deutsche Grundwert Holding AG', 'displaySymbol': '5TR.HM', 'symbol': '5TR.HM'}, { [...]}]这是我的方法:def getStocksAvailable: exchangeHamburg = (requests.get('https://....').json()) for item in exchangeHamburg: print(item[0]) print(item[1]) print(item[2]) # push to DB logicgetStocksAvailable();这给我这个错误:Traceback (most recent call last): File "C:/Users/Jonas/Desktop/CFD/CFD/feeder/feeder.py", line 24, in <module> getStocksAvailable(); File "C:/Users/Jonas/Desktop/CFD/CFD/feeder/feeder.py", line 20, in getStocksAvailable print(item[0])KeyError: 0更新了所做的评论,现在抛出新错误
2 回答

烙印99
TA贡献1829条经验 获得超13个赞
字典有命名元素,没有编号。所以应该是
print(item['description'])
print(item['displaySymbol'])
print(item['symbol'])

牛魔王的故事
TA贡献1830条经验 获得超3个赞
你知道哪些键来自那个字典。由于其结构,dict values 调用起来很简单:
for item in exchangeHamburg: print(item.get('description', 'default value'))
注意 .get 方法搜索键“描述”然后返回它的值,或者从第二个参数返回“默认值”(没有第二个参数它返回无)。
添加回答
举报
0/150
提交
取消