Я попытался выполнить команду «лестница» в discord.py

#python #discord #command #discord.py #bots

Вопрос:

я попытался сделать команду «лестница» в discord.py, это должно выглядеть так:

 ---
   I
----
    I
 

и т.д…

но я получаю ошибку:

Ошибка синтаксиса: неверный синтаксис PS E:Hyper Бот> amp; C:/Users/merli/AppData/Local/Programs/Python/Python36-32/python.exe «e:/Hyper Бот/Гипер bot.py» Файл «e:/Hyper Бот/Гипер bot.py», строка 183 время.спящий режим 1 ^ Ошибка синтаксиса: недопустимый синтаксис

Это мой код:

 async def stairs(ctx):
   i = 1
   while True:
       ctx.send(i * '-')
       ctx.send(i * ' '   'I')
       i = i   2
       time.sleep 1 ```
 

Комментарии:

1. time.sleep(1) Вы пропускаете скобки.

2. И ты пропадал await раньше ctx.send .

Ответ №1:

Ошибка time.sleep 1 вызвана отсутствием круглых скобок, как указал Джон Гордон. Однако я хотел бы добавить, что вы time.sleep вообще не должны использовать.

Смотрите, что time-это синхронная библиотека, когда вы используете time.sleep весь ваш бот, он будет спать и не будет реагировать на пользователей или получать события.

Вы должны использовать await asyncio.sleep вместо этого. Он используется таким же образом, и вы импортируете библиотеку таким же import asyncio образом .

Комментарии:

1. хорошо, это сработало, спасибо, но теперь у меня есть еще одна ошибка, в которой говорится: e:/Hyper Бот/Гипер бот.py:181: Предупреждение о времени выполнения: сопрограмма «Сообщение.отправить» никогда не ожидалась ctx.отправить(i * ‘-‘) e:/Hyper Бот/Гипер бот.py:182: Предупреждение о времени выполнения: сопрограмма «Отправка сообщений» никогда не ожидалась ctx.отправка(i * » ‘I’)

2. Прочтите ошибку, там написано «отправить» то, чего никогда не ждали. await IT