Python Discord Bot报错:Client.run()缺少必要位置参数token
问题解决:Discord Bot Client.run() 参数错误
你的问题出在没有正确实例化MyClient类,导致调用run()时无法获取实例对象(self)。
错误原因
代码里client = MyClient只是把类本身赋值给了变量,并没有创建类的实例。Client.run()是实例方法,必须通过类的实例来调用,直接用类调用会缺失self参数,进而引发后续的参数错误。
修正后的代码
import discord class MyClient(discord.Client): async def on_ready(self): print("print Befehl test") # 加括号实例化MyClient类 client = MyClient() # 传入Discord Bot令牌调用run方法 client.run('你的TOKEN')
关键说明
- 实例化类时必须添加括号
(),生成可调用实例方法的对象,而不是直接引用类本身。 - 实例调用
run()时,直接传入令牌作为位置参数即可,也可以用client.run(token='你的TOKEN')的关键字参数写法,两种方式都有效。
内容的提问来源于stack exchange,提问作者Sakurairo Fuyu
相关产品推荐
相关产品推荐

