Python 在jinja2中使用阵列

Python 在jinja2中使用阵列,python,arrays,jinja2,Python,Arrays,Jinja2,我正在将一个数组对象从Flask服务器中的视图传递到jinja2模板。假设名称为aList。当我尝试更改aList中的值时,如下所示: 在烧瓶中: aList = ['a', 'b', 'c'] 在模板中: {% set aList[0] = "work, dammit!" %} 我得到这个错误,告诉我模板中应该是“=”而不是“[” 有人能告诉我jinja2中使用数组的正确方法是什么吗?首先:不应该在模板中处理逻辑 第二:如果你真的必须: 如果jinja不接受数组语法,您应该能够使用stdl

我正在将一个数组对象从Flask服务器中的视图传递到jinja2模板。假设名称为
aList
。当我尝试更改
aList
中的值时,如下所示:

在烧瓶中:

aList = ['a', 'b', 'c']
在模板中:

{% set aList[0] = "work, dammit!" %}
我得到这个错误,告诉我模板中应该是“=”而不是“[”


有人能告诉我jinja2中使用数组的正确方法是什么吗?

首先:不应该在模板中处理逻辑

第二:如果你真的必须:

如果jinja不接受数组语法,您应该能够使用stdlib中的
操作符.setitem
来解决它。(确保将
操作符添加到globals)


您为什么要这样做?我们如何/在何处这样做?“无论您在何处设置jinja环境,都要确保向globals添加运算符”。
{% set foo = [0, 1, 2, 3, 4] %}
{% set _ = operator.setitem(foo, 'some stuff') %}
{{ foo }}