错误:方法调用中没有参数'coro'的值,并且未定义变量错误



我正在尝试使用discord.py库制作一个机器人程序。下面的功能应该是踢用户。当用户没有传递它应该踢的用户的名字时,机器人应该发送消息:";请指定要踢的用户";。除非我输入以下代码

#kick command
@bot.command()
@has_permissions(kick_members=True)
async def kick(ctx, member : discord.Member, *, reason=None):
await member.kick(reason=reason)
await ctx.send(f'User {member.mention} has been kicked for: "{reason}".')
#this is where the error should be written
@bot.event()
async def on_command_error(ctx, errors):
if isinstance(error, commands.MissingRequiredArgument):
await ctx.send("Please specify the user you want to kick")

我得到两个错误:第一个是关于@bot.event()行代码中的@bot。错误是";方法调用"中的参数"coro"没有值;另一个是关于";错误";在CCD_ 3代码行中。错误为:Undefined variable 'error'。有人知道怎么解决这个问题吗?

1-@bot.event应该没有()

2-是commands.errors.MissingRequiredArgument你错过了errors

3-async def on_command_error(ctx, error):error而不是errors

#kick command
@bot.command()
@has_permissions(kick_members=True)
async def kick(ctx, member : discord.Member, *, reason=None):
await member.kick(reason=reason)
await ctx.send(f'User {member.mention} has been kicked for: "{reason}".')
#this is where the error should be written
@bot.event
async def on_command_error(ctx, error):
if isinstance(error, commands.errors.MissingRequiredArgument):
await ctx.send("Please specify the user you want to kick")

注意:错误消息是所有命令的常规消息。

最新更新