Ошибка при запуске команды, не понимаю это с стороны хостинга или в коде
import disnake
import re
import random
from disnake.ext import commands
intents = disnake.Intents.default()
intents.members = True
intents.message_content = True
bot = commands.Bot(command_prefix='/', intents=intents)
messages = ["Извените, я уже тут", "Где-то плачет 1 разработчик создавший меня" , "Спать! Я хочу спать, я думаю тоже хочет"]
@bot.slash_command(name="ping", description="Проверить бота на работу")
async def random(inter):
random_message = random.choice(messages)
await inter.response.send_message(random_message)
bot.run("мой токен")
Сам бот просто пишет "Бот не отвечает".
В коде ошибок я не вижу.
Ответы (2 шт):
Автор решения: Andrew Hobbit
→ Ссылка
@bot.slash_command(name="ping", description="Проверить бота на работу")
async def ping(inter):
random_message = random.choice(messages)
await inter.response.send_message(random_message)
Автор решения: CrazyElf
→ Ссылка
import random
^^^^^^
...
@bot.slash_command(name="ping", description="Проверить бота на работу")
async def random(inter):
^^^^^^
random_message = random.choice(messages)
^^^^^^
В Питоне все сущности равноправны, пространство имён общее, поэтому переменные, функции, библиотеки лежат в одном пространстве имён и при совпадении имени перекрывают друг-друга.
Как легко догадаться по тексту ошибки, вы пытаетесь вызвать метод choice не от библиотеки random, а от вашего же обработчика команды с тем же именем random.
Не называйте в Питоне разные сущности одинаковыми именами или именами встроенных методов или библиотек, одна сущность перекроет другую и у вас будут ошибки, не всегда очевидные.
