Подскажите как сделать такое условие python PyTelegramBotApi

Вообщем у меня задача такая, написать условие в котором есть список слов, и нужно сделать так что бы если кто то в чате использовал любое одно слово из этого списка то бот отправлял бы какое то сообщение Есть такой код:

@bot.message_handler(content_types="text")
def get_token(message):
    questions = ("want","get", "buy", "find", "token", "free", "teslabot", "coin", "catch", "swap", "trade")
    employee = random.choice(["then write to my employee let him work", "Then write to my employee to let him work off the debt!"])
    Bot_name = " " # Сюда пропишите ник того бота
    if "?" in message.text:
        for i in questions:
            if i in message.text.lower():
                bot.send_message(message.chat.id,
                "<b><a href='https://pancakeswap.finance/swap?outputCurrency=0x2a69c59b8b493141d9f41b8f4fa724b60cd204e0'>You can buy a token here</a></b> \n If you want to get a token for free {0} Here is his name - <b>{1}</b>".format(employee, Bot_name),
                 parse_mode="html")

В этом коде если кто то пишет в чат несколько слов в одном сообщение, то бот отправляет столько же сообщений сколько видит слов, как это исправить что бы он отправлял только одно сообщение


Ответы (1 шт):

Автор решения: Archerymystery

Все относительно легко:

@bot.message_handler(content_types="text")
def get_token(message):
    mes = (str(message.text)).split()
    questions = ("want","get", "buy", "find", "token", "free",  "teslabot", "coin", "catch", "swap", "trade")
 
    if not (len(list(set(questions) & set(mes)))) ==0: 

       bot.send_message(message.chat.id,"")

Тут:

if not (len(list(set(questions) & set(mes)))) ==0: 

Мы создаем список из одинаковых элементов в двух списках и узнаем его длину. Дальше, если не ноль, то отправляем сообщения.

→ Ссылка