Ошибка AttributeError: 'Bot' object has no attribute 'split' discord.py[решён]
Хочу добавить калькулятор в своего discord бота,но при попытке запустить команду выдаёт ошибку
AttributeError: 'Bot' object has no attribute 'split'
Вот код:
import simpleeval
from simpleeval import simple_eval
@bot.command(pass_context=True)
async def калькулятор(ctx):
_, math_str = message.split(' ', 1)
result = simple_eval(math_str)
print(result)
Как исправить?
Ответы (1 шт):
Вы уверены, что ошибка возникает именно в указанной вами функции калькулятор()?
AttributeError: 'Bot' object has no attribute 'split'
В тексте ошибки сказано, что вы пытаетесь разбить методом split() не строку, а объект вашего бота - discord.ext.commands.Bot(), но в прикрепленной вами функции такого действия нет.
Зато есть другая ошибка. В этой строке:
_, math_str = message.split(' ', 1)
Вы пытаетесь разбить неизвестный объект message, хотя в функцию он не был передан напрямую. Именно текст сообщения вы можете разбить получив его из контекста.
Вот так:
_, math_str = ctx.message.content.split(' ', 1)
С объектом Bot у вас, наверное, та же ситуация. Посмотрите внимательно, что вы делаете.