неподдерживаемый тип (-ы) операндов для +: 'float' и 'Complex' [duplicate]

Из документации rewrite:

Переопределение значения по умолчанию, предоставленного on_message, запрещает выполнение каких-либо дополнительных команд. Чтобы исправить это, добавьте строку bot.process_commands(message) в конце вашего on_message. Например:

@bot.event
async def on_message(message):
    # do some extra stuff here

    await bot.process_commands(message)
blockquote>

Если у вас есть вопросы о расширении discord.ext.commands, документация перезаписи - это место для проверки. К сожалению, нет никаких попыток написать эквивалентную документацию для ветви async.

0
задан Joe 27 May 2016 в 18:26
поделиться

1 ответ

Вы не можете изменить str 's __add__, но вы можете определить, как добавить свой класс в строки. Я не рекомендую это делать.

class MyClass(object):
    ...
    def __add__(self, other):
        if isinstance(other, str):
            return str(self) + other
        ...
    def __radd__(self, other):
        if isinstance(other, str):
            return other + str(self)
        ...

В "asdf" + thing, если "asdf".__add__ не знает, как обрабатывать добавление, Python пытается thing.__radd__("asdf").

1
ответ дан user2357112 1 September 2018 в 08:45
поделиться
Другие вопросы по тегам:

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