@smoosh

Почему импортированная фраза не работает в боте pyTelegramBotAPI?

Проблема: Когда я пишу условие для функции она не используется.

Код:
def send_text(message):
    if message.text.lower() == '/menu':
        bot.send_message(message.chat.id, 'Что тебе нужно? \n1. Способности персонажей \n2. Топ профилей игроков \n3. Правила игры')
        
    elif message.text.lower() in ['Топ профилей' , '/profile', '2']:
        bot.send_message(message.chat.id, 'Топ профилей еще нет.\n\nТоп профилей обновляется каждую неделю')
       
    elif message.text.lower() in ['1', 'Способности Персонажей', '/stats']:
        bot.send_message(message.chat.id, 'Напишите имя персонажа')
       
    elif message.text.lower() in ['3', 'Правила игры', '/rules']:
        bot.send_message(message.chat.id, 'Правила:')
       
    elif message.text.lower() == 'Мелиодас':
        bot.send_message(message.chat.id, p.Meliodas)
       
    elif message.text.lower() in ['Глоксиния']:
        bot.send_message(message.chat.id, p.Gloksinia)
       

    else:
        bot.send_message(message.chat.id, 'Не понял, ты написал что-то не то.')


Не работают - Мелиодас и Глоксиния
  • Вопрос задан
  • 43 просмотра
Пригласить эксперта
Ответы на вопрос 3
@smoosh Автор вопроса
Если что, с отступом строк все нормально.
Ответ написан
подумайте, каким должно быть message, чтобы message.text.lower() == 'Мелиодас'
Ответ написан
Комментировать
tumbler
@tumbler Куратор тега Python
бекенд-разработчик на python
Вы все варианты сообщений приводите к нижнему регистру, после чего сравниваете полученное значение, содержащее только маленькие буквы, с текстом, в котором есть заглавные. Перепишите константы в lowercase и всё заработает.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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