@reeetr0

Почему срабатывает else?

Хочу создать телеграм бота для проверки английских слов:

@bot.message_handler(commands=['слова'])
def start_message(message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    item1 = types.KeyboardButton("/слова")
    bot.send_message(message.chat.id, 'Описание слова', reply_markup=keyboard1)


@bot.message_handler(content_types=['text'])
def send_text(message):
  if  message.text.lower() == 'слово':
        bot.send_message(message.chat.id, 'Правильно!')
        bot.send_message(message.chat.id, 'описание след. слова')
  elif message.text.lower() == 'показать ответ':
        bot.send_message(message.chat.id, 'stilts')
  else: bot.send_message(message.chat.id, 'неправильно')


Но после того как бот отправляет первое описание слова, он сразу отправляет "неправильно"
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Можно начать с того, что код в start_message нерабочий, keyboard1 не определена.

Во-вторых, что вы делаете? Что вам не нравится? При каких действиях у вас неправильное поведение?
Если отправить "слово" либо "показать ответ" - никаких "неправильно" не отправляется, срабатывает только if / elif
Ответ написан
Ваш ответ на вопрос

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

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