@Simon440-png
Beginner python developer

Как реализовать цикл в telebot?

Здравствуйте, интересует как можно запустить цикл записи данных в переменные в telebot. Условно пользователь указывает кол-во повторений цикла, в этом цикле реализуется пользовательский ввод и последующая его запись в список. Примерный псевдокод выглядит вот так:
def assignee(message):
    sent = bot.send_message(message.chat.id, "Введите количество участников")
    bot.register_next_step_handler(sent, assignee2)

def assignee2(message):
    user_choose[message.chat.id] = message.text
    for i in range(int(user_choose[message.chat.id])):
        bot.send_message(message.chat.id, "Введите ID участников")
        assign.append(message.text)

Как это можно реализовать и возможно ли вообще?
  • Вопрос задан
  • 201 просмотр
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Это называется машина состояний.

Если делать самому, то для каждого пользователя надо хранить сведения о текущем шаге. Например: "вводит значения, введены значения А, Б, В".
Желательно хранить в перманентном хранилище типа БД, чтобы если что, пользователь не терял введённые сведения.
При получении сообщения смотреть, на каком шаге находится пользователь, и обрабатывать сообщение в зависимости от этого.

С телеботом не работал, так что смотри документацию - есть там уже реализация машины состояний, или нет.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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