Python 对某个不一致id的角色管理

Python 对某个不一致id的角色管理,python,discord,discord.py,Python,Discord,Discord.py,这就是我所拥有的,但它仍然不起作用 @client.command() async def addrole(ctx, member : discord.Member, role : discord.Role): if ctx.guild.id == "777563438469087244": await member.add_roles("799957984062865448") else: return 我想给加入成员角色但仅在

这就是我所拥有的,但它仍然不起作用

@client.command()
async def addrole(ctx, member : discord.Member, role : discord.Role):
  if ctx.guild.id == "777563438469087244":
    await member.add_roles("799957984062865448")
  else:
    return

我想给加入成员角色但仅在该服务器中的任何人提供id

ctx.guild.id
返回整数类型的数据。在代码中,您试图将其与字符串进行比较。你只需要删除引号。然后,您不能添加具有角色id的角色。您必须添加角色本身

@client.command()
异步def addrole(ctx,成员:discord.member,角色:discord.role):
如果ctx.guild.id==777563438469087244:
等待成员。添加_角色(角色)
  • Guild.id
    是一个整数,您将其与字符串进行比较
  • Member.add_roles
    中,您需要的是角色对象,而不是字符串
  • 如果ctx.guild.id==777563438469087244:
    等待成员。添加_角色(角色)
    

    此外,这是一个命令,而不是一个事件,如果你想在有人加入公会时添加角色,你应该使用
    on\u member\u join
    事件。您还需要启用
    意向。会员

    如何在会员加入时使其成为活动?nvm完成了哈哈!