如何让我的机器人删除自己的消息?

How can I make my bot delete its own message?

我在下一个明确的命令。当消息被删除时,机器人会给出一条消息,说消息已被删除。 1 秒后,我希望它删除该消息。 我知道如何获得 1 秒的延迟。谢谢!

您可以将发送的消息存储在一个变量中,并使用 asyncio 的睡眠函数来延迟,或者 delete() 的 kwarg,delay:

@bot.command()
async def disappear(ctx):
    msg = await ctx.send("Hey!")
    await asyncio.sleep(1)
    await msg.delete()

还有矮人:

@bot.command()
async def disappear(ctx):
    msg = await ctx.send("Hey!")
    await msg.delete(delay=1)

参考文献: