Discord.py重写所有命令的收集列表

时间:2018-12-24 11:54:53

标签: python discord.py discord.py-rewrite

我正在尝试获取Discord机器人内所有命令的列表以进行重写。我正在使用Python 3.6编写此代码

我尝试通过执行以下命令打印命令列表 print(bot.commands) 这只为我提供了以下回报:

{<discord.ext.commands.core.Command object at 0x00000209EE6AD4E0>, <discord.ext.commands.core.Command object at 0x00000209EE6AD470>}

我希望通常的输出为clear(),因为这是我到目前为止在bot中编程的唯一命令,该命令可以正常工作。但是它只打印上面的

2 个答案:

答案 0 :(得分:0)

我认为您正在寻找类似的东西。

@bot.command(name="help", description="Returns all commands available")
async def help(ctx):
    helptext = "```"
    for command in self.bot.commands:
        helptext+=f"{helptext}\n"
    helptext+="```"
    await ctx.send(helptext)

答案 1 :(得分:0)

这些是您的机器人所拥有的Command对象。之所以有两个原因,是因为您的机器人具有内置的help命令,该命令完全可以满足您的需求。如果您的clear命令是

@bot.command()
async def clear(ctx):
    "A command for clearing stuff"
    pass

然后运行!help将为您提供输出

 No Category:
  help  Shows this message.
  clear A command for clearing stuff

Type !help command for more info on a command.
You can also type !help category for more info on a category.