Jinja2 contador de bucle anidado

{% set cnt = 0 %}
{% for room in rooms %}
  {% for bed in room %}
    {% set cnt = cnt + 1 %}
  {% endfor %}
{{ cnt }}
{% endfor %}

Digamos que tenemos ese bucle anidado, el cnt impreso SIEMPRE será 0, porque eso es lo que se definió cuando ingresamos al primer bucle para. Cuando incrementamos el contador en el bucle interno, parece que solo es una variable local para el bucle interno, por lo que se incrementará mientras esté dentro del bucle, pero luego ese cnt local desaparecerá. ¿Cómo podemos modificar el cnt global?

Por muy bueno que pueda ser el documento Jinja2, no están claros acerca de establecer ámbitos variables. Lo único que mencionaba el alcance era el modificador "de ámbito" para los bloques internos, pero supongo que no se puede aplicar a todo ... loco.

Respuestas a la pregunta(3)

Su respuesta a la pregunta