Я новичок в Python, и я пытаюсь создать простой REST api с флягой. я не понимаю, почему это приводит к ошибке:Вложенные словари в python
boxes = {}
counter = 1
for box in ListOfBoxes:
boxes['boxes'][counter]['ID']= box.ID
boxes['boxes'][counter]['name']= box.name
boxes['boxes'][counter]['state']= box.state
boxes['boxes'][counter]['directory']= box.directory
boxes['boxes'][counter]['provider']= box.provider
counter +=1
return jsonify(boxes)
Хотя это работает: существо
boxes = {}
counter = 1
for box in ListOfBoxes:
boxes['boxes'] = {}
boxes['boxes'][counter] = []
boxes['boxes'][counter].append({'ID': box.ID, 'name':box.name, 'state': box.state, 'directory': box.directory, 'provider': box.provider})
counter +=1
return jsonify(boxes)
Ошибка:
File "./flask/app.py",
line 16, in get_boxes boxes['boxes'][counter]['ID']= box.ID KeyError: 'boxes'
Когда прибегая к помощи и stackoverflowing ответы, в основном второй используется фрагмент кода. По крайней мере, это то, что я понимаю из этого.
Возможный дубликат [Что это лучший способ для реализации вложенных словарей] (HTTP : //stackoverflow.com/questions/635483/what-is-the-best-way-to-implement-nested-dictionaries) – TemporalWolf