Как сделать чтобы при вводе команды не проверялся регистр? discord.py

Пользователь пишет команду /TEAM, но в коде у меня должна быть команда /team и как сделать чтобы при любом регистре команда выполнялась?


Ответы (4 шт):

Автор решения: Helper

Преобразуйте выражение к верхнему ( .upper() ) или нижнему регистру ( .lower() )

→ Ссылка
Автор решения: Bloodies

туда, где получаешь сообщение от пользователя '\TEAM'.lower() или же ctx.lower()

→ Ссылка
Автор решения: denisnumb

Самый простой вариант - через aliases:

@bot.command(aliases=['team', 'TEAM'])
async def __team(ctx):
    await ctx.send('team')

Если у команды множество вариаций названий, можно проверять команду в on_message() и приводить ее название к нижнему регистру, а затем уже передавать в обработчик команды:

@bot.event
async def on_message(message):
    if message.author.bot:
        return
    if message.content.startswith(bot.command_prefix):
        splitted_content = message.content.split()
        splitted_content[0] = splitted_content[0].lower()
        message.content = ' '.join(splitted_content)
        await bot.process_commands(message)
→ Ссылка
Автор решения: Donan
bot = commands.Bot(command_prefix='Ваш префикс', case_insensitive=True)

                                                 ^^^^^^^^^^^^^^^^^^^^^

→ Ссылка