如何使用discord.py将用户转换为成员

zhte4eai  于 2021-09-08  发布在  Java
关注(0)|答案(1)|浏览(408)

我试图发出一个info命令,我想获得玩家的top_角色,并且只能使用member对象访问它。但我的info命令中只有user对象,所以如何将user转换为member?
脚本:

@client.command(pass_context=True, name='info')
async def info(ctx, *, user: discord.User):
    member = commands.converter.MemberConverter().convert(user.id)
    embed = discord.Embed(
        title=str(user.name) + "'s Info.",
        description=f"""
        Name: {user.name}
        Created At: {user.created_at}
        Discriminator: {user.discriminator}
        Display Name: {user.display_name}
        ID: {user.id}
        Is Avatar Animated: {user.is_avatar_animated()}
        Top Role: {member.top_role}
        """
    )
    await ctx.send(embed=embed)
5us2dqdw

5us2dqdw1#

MemberConverter.convert 也需要 ctx 作为一个论点,它也是一个协同程序,所以你需要 await 信息技术

member = await commands.MemberConverter().convert(ctx, user.id)

您也可以简单地键入提示 discord.Member 而不是 discord.User ...

async def info(ctx, user: discord.Member):

相关问题