Задать вопрос
jijhub
@jijhub
Разработчик игр, ботов, приложений

Как прервать цикл в ивенте on_message?

При написании сообщения, что содержит слово из цикла a , бот начинает спамить словами "Привет". Хотя он должен отправлять "Привет" лишь один раз, даже счетчик с переменной d сделал. В чем проблема?

a = ['привет', 'драсьте', 'ку', 'хай']



@bot.event
async def on_message(message):
    d = 0
    for i in a:
        if i in message.content.lower():
            if d == 0:   #ну или while, проблемы не меняет
                await message.channel.send('Привет')
                d =+1
            else:
                return
  • Вопрос задан
  • 61 просмотр
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
discord.py?
on_message() отрабатывает на ВСЕ сообщения, в т.ч. сообщения от самого бота. Проверяй отправителя сообщения.
И да, этот момент есть в документации discord.py. Советую её почитать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы