如何在异步函数 discord.py

时间:2021-05-17 22:44:45

标签: python discord discord.py

我正在尝试使用 discord.py 创建一个 discord 机器人,但遇到以下错误: 当我尝试在如下所示的异步函数中使用空格时:

@client.command()
async def helpcmd ping(ctx):
  embed=discord.Embed(title='"ping" Command help', description='See the bot latency in milliseconds', color=0x0000ff)
  embed.add_field(name='Command Aliases', value='[no command aliases]', inline=False)
  await ctx.send(embed=embed)

由于“helpcmd”和“ping”之间的空格,我不断收到语法错误。 有人可以帮我解决这个问题吗?谢谢。

2 个答案:

答案 0 :(得分:1)

几乎在每种编程语言中都不允许在变量、类、函数等中使用空格。
Discord 也不解析带有空格的命令。您应该将 _ 用于这些目的。

您也可以使用带参数的单个命令

@commands.command()
async def helpcmd(ctx, arg):
    if arg == "ping":
        # do stuff

或者,您可以创建子命令。

@commands.group()
async def helpcmd(ctx):
    # do stuff

@helpcmd.command()
async def ping(ctx):
    # do stuff

答案 1 :(得分:0)

如果函数名称尝试使用 _ 或将两个词放在一起,则不能使用空格