Ответы пользователя по тегу Telegram
  • Как сделать так, чтобы код работал, пока ошибка не исправится?

    Используя isdigit(), как сказали до этого, пишешь условие, если встречается ошибка, то возвращается на ту же позицию:
    balance = 0
    @bot.message_handler(commands=["put"])
    def get_put(message):
        sent_put = bot.send_message(message.chat.id, "Сколько денег(в рублях) ты хочешь положить в копилку?")
        bot.register_next_step_handler(sent_put, put)
    
    def put(message):
        global get_put
        get_put = message.text
        if (message.text).isdigit() == False:
            error_message = bot.send_message(message.chat.id, "Ошибка! Попробуй написать только число(без букв и символов)")
            bot.register_next_step_handler(error_message, put)
        else:
            balance += int(get_put)
            spent_message = "Ты положил " + str(get_put) + "₽" + "\n" + "Теперь в копилке " + str(balance) + "₽"
            bot.send_message(message.chat.id, spent_message, parse_mode="html")


    И баланс наверное лучше задать глобально изначально, а то получится, что ты его заново создаешь при каждом пополнении.
    Ответ написан