我正在尝试创建一个具有该字段并显示用户权限的用户信息命令,但这仅给我一个权限值。 我的代码:
@client.command()
async def userinfo(ctx, member: discord.Member = None):
await ctx.message.delete()
member = ctx.author if not member else member
embed = discord.Embed(colour=member.color, timestamp=ctx.message.created_at, title=f'{member.name}#{member.discriminator}')
***
some embed fields
***
embed.add_field(name='Permissions:', value=member.guild_permissions, inline=False)
await ctx.send(embed=embed)
它给了我<Permissions value=2146959359>
,所以我可以将值转换为权限名称吗?如果member.guild_permissions
不适合,该怎么用?
答案 0 :(得分:1)
Permissions
对象代表所有可用权限。这就是value
是53位整数的原因。
您可以在Permissions
对中(name, value)
对象上进行迭代,但是请注意,该对象使用属性名称。另外,您可以自己将属性名称映射到权限名称,然后使用属性获取值。