在 Jinja2 的相同 <p> 中打印列表中的逗号分隔值

Print comma separated values from list in same <p> in Jinja2

我想打印在同一 p 标记中以逗号分隔的列表中的值。我试过这样的东西

{% for item in list %}
    <p>{{item}}{% if not loop.last %},{% endif %}</p>
{% endfor %}

但是这个打印值在不同的行
item1,
item2

我希望所有内容都打印在一行中,即 item1、item2
我猜是因为 p 标签在 for 循环中,所以每次都会生成新的 p 标签。有没有办法通读列表而不生成不同的 p 标签并在同一个 p 标签中打印项目?

<p> 标记放在 for 循环之外。您还可以使用 <span> 内联项目:

<p>
{% for item in list %}
<span>{{item}}{% if not loop.last %},{% endif %}</span>
{% endfor %}
</p>

如果你想打印以逗号分隔的列表,只需在 jinja 中使用 join

<p>{{ list | join(", ") }}</p>