【问题标题】:How to remove a role from all users who have it with discord.py?如何从所有使用 discord.py 的用户中删除角色?
【发布时间】:2020-08-28 02:23:59
【问题描述】:

我想制作一个机器人,从服务器上拥有该角色的所有用户中删除特定角色。我试过这个:

@bot.command()
async def massremoverole(role: discord.Role):
    guild = bot.get_guild(int(746337818388987967))
    for member in guild.members:
        for role in role.members: 
            if member.has_role(role=True):
                await member.remove_roles

它也不会抛出任何错误。

【问题讨论】:

    标签: python discord discord.py


    【解决方案1】:

    你可以这样做

    @bot.command()
    async def massremoverole(role: discord.Role):
        guild = bot.get_guild(746337818388987967)
        for member in guild.members:
            if role in member.roles:
                    member.remove_roles(role)
    

    我建议你使用guild = ctx.guild 而不是guild = bot.get_guild(746337818388987967),但这取决于你。

    【讨论】:

    • 你不需要遍历成员角色,你可以if role in member.roles:
    猜你喜欢
    • 1970-01-01
    • 2021-04-01
    • 1970-01-01
    • 2021-07-31
    • 2020-04-09
    • 2019-04-07
    • 2020-09-24
    • 2020-12-27
    • 1970-01-01
    相关资源
    最近更新 更多