@pilityxxx

Как сделать увеличение числа при нажатии кнопки в telebot?

Я написал клавиатуру -

def keyboard():
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton('⬅️')
btn2 = types.KeyboardButton('➡️')
markup.add(btn1, btn2)

return markup

Надо сделать увеличение числа при нажатии стрелки в право и уменьшение при нажатии в лево.

То есть если я один раз нажал в право то бот выводит 1, если нажал 2 раза то выводит число 2. Ну а если после этого нажал кнопку в лево то выводит 1 и т.д.

@bot.message_handler(content_types=['text'])
def start_message(message):

namber = 2

if message.text == '⬅️':
namber -=1

if message.text == '➡️':
namber += 1

я Я пытался как то так сделать. Но при каждой итерации значение сбрасывалось. Но это и понятно.
  • Вопрос задан
  • 479 просмотров
Решения вопроса 1
@Dobryi_Mrak
Сохрани переменную number как глобальную и будет тебе счастье. Ведь когла приходит новое сообщение боту, он вызывает написанную тобой функцию start_message, которая при каждом запуске создает переменную number и присваивает ей 2.
number = 2
def start_message():
    global number
    if text_message == '++':
        number += 1
    else:
        number -= 1
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы