(不和.py)“用户”对象在尝试更改成员的角色时没有属性“roles”

2024-05-28 22:25:35 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我试图编写一个bot,让某人在命令中指定一段时间内暂停角色(我知道这个变量被称为hours,尽管它现在是以秒为单位的)。我稍后会修正它。)基本上,它是由主持人在留言中说的'!suspend@personmentonnumberofhours'会将所提到的人暂停一段时间。我遇到的问题是,出于某种原因,bot总是告诉我在我定义罪犯变量的行上找到的user对象没有属性roles。据我所知,不和谐服务器的每个成员都有一个属性角色。我做错了什么,导致了下面的错误,在这个错误中,它不承认罪犯有角色?在

以下是我得到的错误反馈:

line 2943, in remove_roles
new_roles = [x.id for x in member.roles]
AttributeError: 'User' object has no attribute 'roles'

下面是我正在编写的脚本的实际代码。在

^{pr2}$

Tags: in命令角色属性定义bot错误单位
2条回答

错误告诉您,您收到的对象是User,而不是MemberMembers通常有一个角色(至少是一个everyone角色),但是{}s没有

您发布的代码不包含引发错误的实际示例代码,因此我无法重现。但似乎您正在尝试对User对象而不是Member执行一些代码。在

基本上,如果您尝试对discord bot执行操作,则可能会出现此错误。因为bot是一个User类,而不是Member。因此,如果您不想再出现此错误,可以添加以下行:

if (ctx.)message.author == bot.user: return

相关问题 更多 >

    热门问题