为什么在尝试从用户中删除角色时会收到此错误

时间:2021-06-09 08:16:08

标签: discord.py

我正在尝试让机器人选择一个数字,然后删除您的角色或执行其他操作,但我收到错误消息“discord.member 没有属性 remove_roles” 这是我缩短的代码:

n = random.randint(0,2)

  if n==2:
        embed=discord.Embed(title='Nuke',description='Since I am very smart I nuked your role, so you are ded there goes your role =)')
        await ctx.send(embed=embed)
        await member.remove_roles(849202150097944628,reason=None,atomic=True)
      else:
        embed=discord.Embed(title='Nuke',description='Lucky You! The nuke missed, it hit farms so your kinda not fine!')
        await ctx.send(embed=embed)

1 个答案:

答案 0 :(得分:0)

您的问题是您使用错误的参数调用 await member.remove_roles()。该函数接受一个 discord.Role 列表,但您只给了它角色 ID(假设它是一个)

通过

获取角色对象
role = ctx.guild.get_role(849202150097944628)

并删除它

role = ctx.guild.get_role(849202150097944628)
await member.remove_roles([role],reason=None,atomic=True)