Проблема root уже была рассмотрена в комментариях и в ответе RHSmith159 - но вы все равно можете быть заинтересованы в том, как написать правильный код pythoni c ...
Первый пункт: Python for
l oop относится к типу foreach
- вы выполняете итерацию непосредственно в своем списке или в любой другой итерации, вместо того чтобы делать индексированный доступ, подобный C. IOW вместо
lst = ["a", "b", "c"]
for i in range(len(lst)):
print(lst[i])
правильное использование:
for char in lst:
print(char)
Тогда python имеет встроенные функции sum()
, которые принимают итеративные и суммируют свои значения, и генератор выражения, которые можно использовать для преобразования / фильтрации итерируемого. Таким образом, ваш код может быть сокращен до одной строки:
result = sum(float(obj["fields"]["bill"]) for obj in json_object)
В качестве примечания: во время выполнения не существует такого понятия, как «json объект». JSON - это текстовый формат (IOW - строка), а десериализация строки, отформатированной json, дает объект Python - обычно это dict или список диктов - так что json_object
, возможно, не лучшее имя - тот факт, что эти данные не были сериализованы из некоторого json текста, не имеет значения.