Я пытаюсь сделать команду unban для моего сервера разногласий, но это не разделяет имя и дискриминатор. Кто-нибудь может дать какие-нибудь советы? - PullRequest
1 голос
/ 20 июня 2019

Python говорит: «ValueError: недостаточно значений для распаковки (ожидается 2, получено 1)», ссылаясь на 4-ю строку кода. Я искал учебники, потому что я новичок в discord.py, и, похоже, ни один из них не помог.

Я пытался разблокировать пользователя, не разделяя имя и дискриминатор, и не смог заставить это работать.

@client.command()
async def unban(ctx, *, member):
    banned_users = await ctx.guild.bans()
    member_name, member_discriminator = member.split('#')    
    for ban_entry in banned_users:
        user = ban_entry.user
        if (user.name, user.discriminator) == (member_name, member_discriminator):
            await ctx.guild.unban(user)
            await ctx.send(f'Unbanned {user.mention}')
            return

1 Ответ

0 голосов
/ 20 июня 2019

Почему вы пытаетесь их разделить?Было бы гораздо разумнее преобразовать user в discord.User объект, а затем разблокировать этого пользователя (это не может быть объект discord.Member, поскольку пользователь не является гильдиейчлен уже больше)

...