如何在discord.py中获取权限对象的所有权限ID

时间:2021-02-23 01:11:21

标签: python discord.py

我想列出用户拥有的最高权限,并且我知道 discord.Member.guild_permissions 会给我一个权限 ID。我可以使用像 [perm[0] for perm in user.guild_permissions] 这样的列表理解来获取所有 string 权限,但我想获取成员拥有的所有权限 ID 的列表。我怎样才能做到这一点?

这是我目前的代码:

from discord.ext import commands
import discord
intents = discord.Intents.all
bot = commands.Bot(command_prefix='$', description='- shows this message', intents=intents)
---- snip ----

@bot.command(brief='sends top permissions')
async def user_perms(ctx, member: discord.Member):
    permissions = member.guild_permissions
    permission_list = [perm[0] for perm in permissions] # how do I get a list of all the top permission IDs?
    

bot.run('TOKEN')

1 个答案:

答案 0 :(得分:0)

Member.guild_permissions 返回具有 discord.Permissions 属性的 value 实例

permissions = member.guild_permissions
ids = permissions.value

参考: