Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在自我属性中查找discord.py bot以分配角色的位置_Python_Oop_Discord_Discord.py - Fatal编程技术网

Python 在自我属性中查找discord.py bot以分配角色的位置

Python 在自我属性中查找discord.py bot以分配角色的位置,python,oop,discord,discord.py,Python,Oop,Discord,Discord.py,我是Discord服务器的所有者,该服务器没有太多人,因此我希望他们自我介绍,以便我能够跟踪谁是谁。加入后,会员只能访问#简介频道。当他们输入自己的名字时,他们被赋予成员角色 没有任何discord.py函数可以执行此操作,因此我必须将其分为两部分:首先,获取最新消息的作者,然后,为他们分配成员角色。第一部分一点也不难,但第二部分给我带来了一个错误 代码 类UtilBot(commands.Bot): def uu init uu(self,*,命令前缀,名称): commands.Bot.\u

我是Discord服务器的所有者,该服务器没有太多人,因此我希望他们自我介绍,以便我能够跟踪谁是谁。加入后,会员只能访问
#简介
频道。当他们输入自己的名字时,他们被赋予
成员
角色

没有任何
discord.py
函数可以执行此操作,因此我必须将其分为两部分:首先,获取最新消息的作者,然后,为他们分配
成员
角色。第一部分一点也不难,但第二部分给我带来了一个错误

代码

类UtilBot(commands.Bot): def uu init uu(self,*,命令前缀,名称): commands.Bot.\uu init__( self,command\u prefix=command\u prefix,self\u bot=False) 打开(r'.\docs\channels.csv')作为频道: 通道ID=list(csv.reader(通道,分隔符='\t')) 对于i,枚举中的项(通道ID): 通道ID[i]=[int(项目[0]),项目[1]] self.channels=dict(通道ID) self.channel_命令={ “介绍”:自我介绍, “#开发构建”:self.introduction}#允许功能测试 self.name=名称 异步def on_就绪(自): 打印(f“Utils正在运行”) _消息上的异步定义(self,message): channel=self.channels[message.channel.id] 打印(频道) 尝试: self.channel_命令[channel](消息) 除KeyError外: 通过 def介绍(自我介绍,信息): 成员=message.author role=discord.utils.get(member.guild.roles,name=“member”) self.add_角色(成员、角色) def dev_构建(自我,消息): 打印(f'{message.author.name}({self.channels[message.channel.id]})) 打印(message.content) 错误

AttributeError: 'UtilBot' object has no attribute 'add_roles'

我在问如何在维护OOP框架的同时修复此错误,以及是否有其他方法可以完成相同的任务。如果我知道在哪里可以找到与bot相对应的self属性,我可以很容易地解决这个问题,但是当我查看self时,我找不到它。

而不是self.add\u角色(member,role),尝试
成员。add\u角色(role)

是的,这几乎是唯一的事情。在重新编写discord.py之前,我一直在寻找答案,所以很明显它不起作用。