@PhonikTop

Как дополнять json файл?

Код работает без ошибок, новые данные записываются, но удаляются. Возможно это не из-за json, а из-за словаря
Код:
import json
import time


class expenses:
    def __init__(self, account_of_lost, amount_of_loss):
        self.id_spisania = time.strftime("%d.%m.%Y %H:%M:%S")
        self.account_of_lost = account_of_lost
        self.data_of_lost = time.strftime("%d %b %Y")
        self.amount_of_loss = amount_of_loss

    def add_new_expenses(self):
        spisania_dict = {}

        spisania_dict[self.id_spisania] = {
            "data": self.data_of_lost,
            "summa": self.amount_of_loss,
            "schet": self.account_of_lost,
            "valuta": "TRY",
        }

        with open("dict.json", "r+") as file:
            json.dump(spisania_dict, file, indent=4, ensure_ascii=False)


exns = expenses("Наличка", 100)


def main():
    user_choise = input("Хотите продолжить?")

    while user_choise == "да":
        exns.add_new_expenses()
        user_choise = input("Хотите продолжить?")


if __name__ == "__main__":
    main()
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
Wispik
@Wispik
Чтобы файл не заменялся, надо его сначала прочитать, изменить, а потом записать в файл
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@AlbertForest
open("dict.json", "a+")
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы