首页 > 解决方案 > 如何在python中格式化列表中的多个项目

问题描述

所以我使用这个通过 API 访问一个列表:

tags = result["data"]["product"]["tags"]

这产生了这个结果:

['item1', 'item2', 'item3']

我找到了一种按照我想要的方式格式化它们的方法,但它只适用于控制台。在我的主要代码中,我使用了 Discord 嵌入,这里是嵌入字段:

embed.add_field(name="Tags:", value="{}".format(tags), inline=False)

使用此方法(仅在控制台中有效):

print(*tags, sep=' | ')

像这样打印它们:

item1 | item2 | item3

但是,一旦我在 Discord 嵌入中尝试该方法,它只会打印第一项,而不会打印其他内容。我希望能够将我在控制台中得到的东西放到我的不和谐嵌入中。

标签: python-3.xdiscord.py

解决方案


您可以使用连接功能来实现这一点。它需要一个可迭代的,我们可以将列表中的元素传递到这里。请参见下面的示例:

items = ['item1', 'item2', 'item3']

embed = discord.Embed(title="My Embed")
embed.add_field(name="Tags:", value=f"{' | '.join([x for x in items])}", inline=False)

推荐阅读