我想通过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 logic
getStocksAvailable();
这引发了我这个错误:
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
字典已命名元素,未编号。所以应该是
print(item['description'])
print(item['displaySymbol'])
print(item['symbol'])
[您知道女巫钥匙来自那个字典。由于其结构,dict值很容易调用:
for item in exchangeHamburg: print(item.get('description', 'default value'))
注意,.get方法搜索键“描述”,然后返回其值,或者从第二个参数返回“默认值”(不带第二个参数,则返回None)。