on_command_error() 缺少 1 个必需的位置参数:'exc'

Posted

技术标签:

【中文标题】on_command_error() 缺少 1 个必需的位置参数:\'exc\'【英文标题】:on_command_error() missing 1 required positional argument: 'exc'on_command_error() 缺少 1 个必需的位置参数:'exc' 【发布时间】:2021-04-18 09:26:18 【问题描述】:

代码:

@client.event
async def on_command_error(self, ctx, exc):
    if  isinstance(exc, CommandOnCooldown):
        await ctx.send(f"Подождите, команда будет доступна через exc.retry_after секунд")

命令: 机器人已连接 忽略 on_command_error 中的异常 回溯(最近一次通话最后): _run_event 中的文件“C:\Users\gnati\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py”,第 343 行 等待 coro(*args, **kwargs) TypeError:on_command_error() 缺少 1 个必需的位置参数:'exc' 忽略 on_command_error 中的异常 回溯(最近一次通话最后): _run_event 中的文件“C:\Users\gnati\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py”,第 343 行,

【问题讨论】:

【参考方案1】:

这与位置参数无关,而是放在 isinstance 中的类型(即“CommandOnCooldown”)应该是这样的:

@client.event
async def on_command_error(self,ctx,error):
    if isinstance(error, commands.CommandOnCooldown):
        await ctx.send(f"Подождите, команда будет доступна через exc.retry_after секунд")

如果可行,请点赞:)

【讨论】:

Bot connected Ignoring exception in on_command_error Traceback(最近一次调用最后):文件“C:\Users\gnati\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord \client.py",第 343 行,在 _run_event 中等待 coro(*args, **kwargs) 类型错误:on_command_error() 缺少 1 个必需的位置参数:'error' 请显示代码,我更愿意说:else: raise error 继续其他错误 youtube.com/…

以上是关于on_command_error() 缺少 1 个必需的位置参数:'exc'的主要内容,如果未能解决你的问题,请参考以下文章

如何获取在 discord.py 中引发错误的命令名称?

“fit() 缺少 1 个必需的位置参数:'y'”错误

缺少 1 个必需的位置参数:'queryset'

TypeError:缺少 1 个必需的位置参数:'self'

类型错误:parse() 缺少 1 个必需的位置参数:'stream'

TypeError:AuthMiddlewareStack() 缺少 1 个必需的位置参数:'inner'