Почему он жалуется на табуляцию?

Ошибка с консоли

Где в коде ошибка с "табуляцией"

Код (pastebin) - https://pastebin.com/gdzxCb7y

    @client.command(aliases=['d'])
async def marry(ctx, member: discord.Member = None, amount = None): 
    

    await ctx.send(f"{ctx.author.mention}... ")


    def check(m):
        return m.author == member

    try:
        msg = await client.wait_for('message', check=check, timeout=10)
        


        if msg.content.lower() in ['y', 'yes','+','да',' принимаю ']:
            await ctx.send(f"{ctx.author.mention}, твою дуэль принимает {member.mention} , Ждём результат боя")
            asyncio.sleep(3)
            test = random.randint(1, 2)
            if test == 1:  
                await ctx.send(f"Автор дуэли победитель (test text)")
            if test == 2: 
                await ctx.send(f"Автор дуэли проиграл test text")

        elif  msg.content.lower() in ['n', 'no', 'нет', 'отклоняю', '-']:
            await ctx.send(f"Дуэль не состояться - {ctx.author.mention}")
        else:
            await ctx.send("I did not understand that, aborting!")
    except asyncio.TimeoutError as e:
        print(e)
        await ctx.send("Время ожидание закончилось")

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

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

В строке на которую у Вас ругается программа получается смешивание пробелов и табов. Должны быть или только табы или только пробелы, что собственно и вызывает ошибку: Пример ошибки На данном скрине точки отмечают пробелы а сплошная линия табы.

P.S. Во многих IDE есть возможность конвертировать табы в пробелы и наоборот. Или подставлять сразу необходимое.

→ Ссылка