在 Jinja2 中,如何创建自增数字?

In Jinja2, how to create auto increment numbers?

在一个页面中,我想显示一些带有文字提示的图形。例如:

Figure 1
Figure 2

我的密码是

{% set num = 0 %}
Figure {{ ++num }}
Figure {{ ++num }}

但是显示

Figure 0
Figure 0

我怎样才能让它达到我的期望?

那些 文本提示 已经在列表中,您可以使用 for 来显示它们,并使用 loop.index 进行编号:

{% set texts = ['foo', 'bar', 'baz'] %}

{%- for text in texts -%}
  Figure {{ loop.index }}
  {{ text }}

{% endfor -%}

将呈现

Figure 1
  foo

Figure 2
  bar

Figure 3
  baz

或者,它们是另一种格式,您将不得不使用 set 来增加您的计数器:

{% set foo = 'foo' -%}
{% set bar = 'bar' -%}
{% set baz = 'baz' -%}
{% set counter = 1 -%}

Figure {{ counter }}
  {{ foo }}

{% set counter = counter + 1 -%}
Figure {{ counter }}
  {{ bar }}

{% set counter = counter + 1 -%}
Figure {{ counter }}
  {{ baz }}

这将呈现相同的效果。