Я пишу небольшого, шутливого бота Discord, и решил объединить все ключевые слова, на которые мой бот дал бы идентичный ответ, в массив, чтобы сэкономить время.Я пытаюсь выяснить, как я буду проверять, соответствует ли какое-либо содержимое сообщения какому-либо из ключевых слов в массиве.
client = discord.Client()
keywords=["keyword1", "keyword2", "keyword3"]
@client.event ######################
async def on_message(message): # stops bot from #
if message.author == client.user: # replying to itself #
return ######################
if message.content.contains(keywords):
msg = "Hello, {0.author.mention}!".format(message)
await client.send_message(message.channel, msg)
Я ожидал, что код проверит массив на предмет совпаденияключевые слова в массиве, но на самом деле я просто получаю следующий ТБ:
Ignoring exception in on_message
Traceback (most recent call last):
File "C:\Users\Baguette\PycharmProjects\bot\venv\lib\site-packages\discord\client.py", line 270, in _run_event
await coro(*args, **kwargs)
File "C:/Users/Baguette/PycharmProjects/bot/main", line 17, in on_message
if message.content.contains(keywords):
AttributeError: 'str' object has no attribute 'contains'