如何在 discord.py 中响应错误的用户命令



如果用户键入/foo并且该命令不存在,我如何发送消息说"此命令不存在"?

这可能很简单,但我有点困惑。

如果您需要更多信息,请发表评论。

谢谢!

您可以定义一个on_command_error事件(请注意,与记录的重写分支相比,异步分支上的参数顺序是相反的(,如果引发CommandError,将调用该事件。

然后,如果错误是CommandNotFound错误,则可以签入该错误处理程序并相应地处理它:

@bot.event
async def on_command_error(error, ctx):
if isinstance(error, commands.CommandNotFound):
await bot.send_message(ctx.message.channel, "No such command")
else:
raise error

这假定你正在使用discord.ext.commands扩展来编写命令(你应该这样做(。

最新更新