JSON запись текста

Как сделать так , чтобы idea = message.text была записана в JSON файл для того, чтобы потом пользователь смог вызвать функцию отображения всех раннее записанных записей? На данный момент он отображает содержимое JSON файла, но не более:

Вот код функции ввода :


def user_write(message):
    idea = message.text
    markup4 = types.ReplyKeyboardMarkup(resize_keyboard=True)
    write = types.KeyboardButton("?Записать ещё мысль")
    thing = types.KeyboardButton("? Вспомнить мысли")
    back = types.KeyboardButton("❌ Вернутся в главное меню")
    markup4.add(write, thing, back)

    with open("data.json", encoding='utf-8') as file:
        data = json.load(file)


    msg = client.send_message(message.chat.id, f"Ваша мысль:{idea}\nУспешна записана в Yaжедневник.", reply_markup=markup4)
    client.register_next_step_handler(msg, user_answer)

Код вывода :

 elif message.text == "? Вспомнить мысли":
     markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
     write = types.KeyboardButton("?Записать ещё мысль")
     back = types.KeyboardButton("❌ Вернутся в главное меню")
     markup.add(write, back)
     with open('data.json', 'r', encoding='utf-8') as f:  # открыли файл
         text = json.load(f)  # загнали все из файла в переменную
     msg = client.send_message(message.chat.id, 'Ваш список мыслей :' + str(text), reply_markup=marku
     client.register_next_step_handler(msg, user_answer) 

Вот код json файла:


{
  "ideas": [
    {
      "text": ""
    }
  ]
}

Вывод выглядит следующим образом :

>bot, [31.07.2022 13:45]
>Ваша мысль:Как мне быть
>Успешна записана в Bot.

>User, [31.07.2022 13:45]
>? Вспомнить мысли

>bot, [31.07.2022 13:45]
>Ваш список мыслей :{'ideas': [{'text': ''}]}

Ответы (1 шт):

Автор решения: Сергей Ш

не ответ

import json

# dct - словарь
dct = {"ideas": ["Что купмть?"]}
jsn = json.dumps(dct)
# print(type(jsn))
# <class 'str'>  jsn - строка в формате json
dct = json.loads(jsn)
# print(type(dct))
# <class 'dict'> dct - словарь
idea = input('Ваша мысль:')
# Ваша мысль:Попить пиво
dct['ideas'] += [idea]
#print(dct)
# {'ideas': ['Что купмть?', 'Попить пиво']}
print('Ваш список мыслей:', *dct['ideas'], sep='\n')

Ваш список мыслей:
Что купмть?
Попить пиво
→ Ссылка