Для сохранения ответов пользователя в список в цикле в телеграм-боте на Python, вам понадобится использовать библиотеку python-telegram-bot.
В начале вашего скрипта вам потребуется импортировать необходимые модули:
from telegram import Update from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext
Далее, вам потребуется создать функцию-обработчик, которая будет вызываться, когда пользователь отправляет сообщение боту. Внутри этой функции вы сможете сохранять ответы в список.
def handle_message(update: Update, context: CallbackContext): user_response = update.message.text # Сохраняем ответ пользователя в список responses.append(user_response)
Затем вы должны настроить объект-диспетчер, чтобы он вызывал вашу функцию-обработчик при получении нового сообщения:
def main(): updater = Updater("YOUR_TOKEN", use_context=True) dispatcher = updater.dispatcher # Добавляем обработчик новых сообщений dispatcher.add_handler(MessageHandler(Filters.text, handle_message)) # Запускаем бота updater.start_polling()
Теперь, каждый раз когда пользователь отправляет сообщение, оно будет сохраняться в список responses
. Не забудьте создать пустой список responses
перед запуском бота:
responses = []
Весь ваш код может выглядеть следующим образом:
from telegram import Update from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext responses = [] def handle_message(update: Update, context: CallbackContext): user_response = update.message.text # Сохраняем ответ пользователя в список responses.append(user_response) def main(): updater = Updater("YOUR_TOKEN", use_context=True) dispatcher = updater.dispatcher # Добавляем обработчик новых сообщений dispatcher.add_handler(MessageHandler(Filters.text, handle_message)) # Запускаем бота updater.start_polling() if __name__ == '__main__': main()
Не забудьте заменить "YOUR_TOKEN"
на токен вашего телеграм-бота, который вы можете получить через @BotFather.
Теперь, каждый раз когда пользователь отправляет сообщение боту, оно будет сохраняться в список responses
. Вы можете использовать этот список дальше в вашем скрипте для обработки ответов пользователей.