我想以类似于 for
循环打印的方式打印字典中的值列表。到目前为止,我已经能够通过 ctx.send(v)
的 for
循环来做到这一点,但它会以不同的不和谐消息发送结果。
@bot.command()
async def list(ctx):
await ctx.send("List of guests:")
for v in guests.values():
await ctx.send(v)
有没有办法在一条不和谐消息中打印列表? ctx.send 只接受字符串,甚至 f 字符串也没有帮助。郑重声明:我希望每个值都在单独的行中,没有“”,也没有任何表明这是一个字典的文本。
最佳答案
首先,使用list
作为函数名是不好的,因为它会遮蔽内置函数list()
.
函数send()
作为第一个参数(content
),需要 str
值,因此您可以使用 str.join()
将所有值连接到一个字符串并将其传递给函数。代码:
@bot.command()
async def list(ctx):
await ctx.send("List of guests:\n" + "\n".join(guests.values()))
关于python - 如何在一条不和谐消息中发送 for 循环的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57854036/