当前位置: 首页 > 知识库问答 >
问题:

在discord.py中获取成员的角色

奚高扬
2023-03-14

我试图制作一个命令,显示提及用户的角色。这个命令是一个测试命令,我将在mute命令中实现它。(命令将删除成员的当前角色并添加静音角色)

这就是我所拥有的:

@client.command()
async def roles(ctx, member: discord.Member):
  roles = member.roles
  role_names = [role.name for role in roles]
  await ctx.send(role_names)
['@everyone', 'Member']

希望有人能帮我。

谢了!

共有1个答案

纪翰
2023-03-14

要解决这个问题,只需将role_names中的信息格式化为字符串形式,并删除'@Everyone'。可以使用列表理解和join()方法。以下是修订后的守则:

@client.command()
async def roles(ctx, member: discord.Member):
  roles = member.roles
  role_names = ' '.join([role.name for role in roles if role.name != '@everyone'])
  await ctx.send(role_names)
 类似资料:
  • 我正在为我的新discord机器人设置一个静音命令,我对discord相当陌生。胡说八道,不明白出了什么问题。我不断地得到一个错误,即没有指定成员,而它显然是指定的。 我在youtube等网站上尝试了很多教程,但它总是略过一两个细节,所以我无法完全理解。如果有人能纠正我的代码,我将不胜感激,因为我仍在学习discord。皮耶。 它只是想给某人添加一个静音的角色,并完成它。在使用ban和kick命令

  • 我想让我的机器人直接向加入我的服务器的人发送消息,并在30秒后给他们角色。我没有收到任何错误,我的机器人没有崩溃,但它什么也不做。 我的代码: 我已经导入了,,我的机器人有权限,成员没有阻止DMs。

  • 我试图做一个不和谐机器人,它创建一个类别,并为角色和用户设置权限,将用户id作为参数: 其中args是包含命令、类别名称和用户ID的字符串数组。用法应为: 我对此有一些问题,因为就像机器人看不到服务器的成员,他唯一可以添加的用户是我,如果在第一个参数中指定服务器的所有者(在我的例子中是000000)。如果我把别人的ID,机器人不会在类别中添加该用户的权限。我发现,也许机器人看不到其他用户,事实上,

  • 我有一个前端和管理区域。前端使用Laravel的包,对于我使用的是admin,所有视图、控制器和模型都在目录下。 我正在尝试使用相同的角色和权限模型为前端和管理员用户设置角色和权限。为此,我创建了以下表格 管理员 问题是:我可以使用belongtomany()为前端用户获取角色,但不能为管理员获取角色。这是代码。 我已将角色管理的关系设置为管理模型,该模型之前被错误地放置在用户模型中。

  • 请考虑以下代码: 现在我要定义一个类C,它的成员f是类B,成员g来自类a,类似于这样: 我如何在C++中做到这一点?

  • 诸葛io提供了权限管理的功能,共分为超级管理员、管理员、开发者、普通成员、普通成员(仅看板)五种。 接下来分别从公司层面和应用层面区分这些成员的使用权限。 一、成员角色权限表·公司层面 超级管理员 其他成员 公司信息 查看公司基本信息 √ 修改公司名称 √ 查看套餐信息 √ 成员管理 查看公司成员 √ 邀请公司成员 √ 移除公司成员 √ 小组管理 查看小组 √ 新建编辑删除小组 √ 权限管理 移交