如何检查用户在 discord.py 中是否具有特定角色?

时间:2021-07-17 18:00:34

标签: python python-3.x discord discord.py

已经有两个问题与我提出的问题几乎相同,但都没有达到我想要做的。如果用户有另一个角色,我想给他们一个角色。

为了论证起见,假设我授予某人管理员权限。我如何同时给他们所有其他角色?然后,如果我从他们中删除管理员,我如何删除每个角色?

到目前为止,我的代码如下:

#Role assignment loop
@loop(seconds=1)
async def server_timer():
    await client.wait_until_ready()
    if discord.Role.id in user.roles

我使用循环不断检查一个用户是否有一个角色,如果有,就为他们分配另一个角色。如果他们不这样做,我就无视。

我知道代码还没有完成所有这些,但我对 Python 很陌生,我不知道如何实现这一点。有人知道在这种情况下我的代码应该有什么吗?使用循环是最好的方法吗?

1 个答案:

答案 0 :(得分:0)

    role = discord.utils.find(lambda r: r.name == 'Member', ctx.message.server.roles)
    if role in user.roles:
        #whatever u want to execute if role exists
    else:
        #if role doesnt exist