Discord 机器人不会将我的消息发送到服务器,而是将其打印在终端中


@bot.command(name="complete")
async def _command(ctx):
await ctx.send(f"Which task did you complete?n" + ("-"*20) + "n")
dictDailyTasks = { i : dailyTasks[i] for i in range(0, len(dailyTasks) ) }
for key, value in dictDailyTasks.items():
print(key,value)
Output:
0 RUN
1 WORKOUT

我的代码工作时,我打印键,值到控制台,然而,当我试图将它发送到我的通道,什么也没有发生。

@bot.command(name="complete")
async def _command(ctx):
await ctx.send(f"Which task did you complete?n" + ("-"*20) + "n")
dictDailyTasks = { i : dailyTasks[i] for i in range(0, len(dailyTasks) ) }
for key, value in dictDailyTasks.items():
await ctx.send(key, value)

知道为什么会这样吗?我觉得我忽视了一个愚蠢的错误!谢谢!

我认为这是因为print()可以接受多个参数并将它们全部打印出来,而send只需要1(要发送的内容)。如果你想把它们作为一对而不是分开发送,要么发送一个元组,要么用字符串格式化它们。

await ctx.send(f"({key}, {value})")

最新更新