@reddfan

Телеграм бот, ответ пользователю если его сообщение содержит слово?

Пробую сделать телеграм бота, нужно чтобы бот отправлял стикер пользователю, если его сообщение содержит слово, а не соответствует полностью, как это реализовать?
Использую pyTelegramBotAPI.
Пример, пользователь отправляет сообщение, и если хоть в каком-то месте сообщения есть слово "Дима" в чат отправляется стикер. В данный момент отправляет стикер, если сообщение пользователя состоит только из "дима". Помогите пожалуйста разобраться. Не могу найти ответ хоть убей.

import telebot
import config
from telebot import types

bot = telebot.TeleBot(config.TOKEN)

@bot.message_handler(commands=['start'])
def welcome(message):
bot.send_message(message.chat.id, 'Здравствуйте')

@bot.message_handler(content_types=['text'])
def lalala(message):
if message.text.lower() == 'дима' or message.text.lower() == 'дмитрий' or message.text.lower() == 'димон':
sti = open('stickers/sticker.webp', 'rb')
bot.send_sticker(message.chat.id, sti)

bot.polling(none_stop=True)
  • Вопрос задан
  • 347 просмотров
Решения вопроса 1
kgb_zor
@kgb_zor
I need your traceback.
names = ['дима', 'дмитрий', 'димоооооон']
for name in names:
    if name in message.text.lower(): 
        # ваш код
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@anerev
Тэг кода надо использовать(и знать основы python)
@bot.message_handler(func=lambda message: 'дима' in message.text.lower(), content_types=['text'])
def lalala(message):
    sti = open('stickers/sticker.webp', 'rb')
    bot.send_sticker(message.chat.id, sti)
Ответ написан
Ваш ответ на вопрос

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

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