Диктовка счетчика JSONPython

Программы на Python
Ответить
Гость
 Диктовка счетчика JSON

Сообщение Гость »

Я попытался создать функцию get_statistics для создания словаря сохраняемости JSON. Я начал делать это вручную, но он хочет, чтобы я делал это автоматически. В настоящее время застрял в автоматическом создании моего кода возврата. Может кто-нибудь помочь?

Код: Выделить всё

import json
from health import Health

def save_json(barbie: list[Health]):
try:
with open ('health_records.json', 'w') as json_file:
data = []
for b in barbie:

data.append( {
"name": b.name,
"weight_kg": b.weight_kg,
"height_m": b.height_m,
"bmi": b.bmi
})
json.dump(data, json_file, indent=2)

except FileNotFoundError:
print("Error, file not found")

health50 = Health("Barbie", 50, 180)
healthlist = [health50]
save_json(health50)

def get_statistics(filename: str = "health_records.json") -> dict:

barbie = {"Total_records": 1, "avg_bmi": 1.34, "most_common_category": "underweight", "category_distribution": }
Задача:
"Ядро — сохранение JSON
  • Сохраняет список объектов Health в health_records.json Сохраняет: имя, вес_кг, высоту_м, вычисляемый_bmi для каждой записи. Использует читаемое форматирование JSON (

    Код: Выделить всё

    indent=2
    ).
  • Загружает записи о состоянии здоровья из health_records.json обратно в объекты Health. Возвращает пустой список, если файл не существует. Грамотно обрабатывает FileNotFoundError.
Дополнительная функция
  • Код: Выделить всё

    get_statistics(filename: str = "health_records.json") -> dict
    Возвращает: total_records (int), avg_bmi (с плавающей запятой, 2 десятичных знака), Most_common_category (str), Category_distribution (определение счетчиков по категориям)."


Подробнее: https://stackoverflow.com/questions/799 ... count-json
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»