Не реагирует бот Telegram Python
Бот должен отправлять в ответ столько сердечек - сколько ему попросил пользователь, написав это при помощи цифр.
@bot.message_handler(content_types=["text"])
def text(message):
if message.text == type(1):
y = message.text
bot.send_message(message.chat.id, "❤" * y)
Однако при вводе каких либо данных - бот молчит
P.S - Пробовал еще без квадратных скобок
@bot.message_handler(content_types="text")
Ответы (2 шт):
Автор решения: SelectionForCollection
→ Ссылка
Немного не понял ваш синтаксис и логику, поэтому предлагаю свое решение.
@bot.message_handler(commands=["text"])
def sub_text(message):
send = bot.send_message(message.chat.id, 'Количество сердечек')
bot.register_next_step_handler(send, text)
def text(message):
try:
bot.send_message(message.chat.id, "❤" * int(message.text))
except Exception:
bot.send_message(message.chat.id, 'Не могу понять количество')
Автор решения: White Marlin
→ Ссылка
Попробуйте так:
@bot.message_handler(content_types=["text"])
def text(message):
if re.match(r"^[0-9]+$", message.text):
bot.send_message(message.chat.id, "❤" * int(message.text))
else:
bot.send_message(message.chat.id, "Отправьте мне число.")
