我有一个列表data = [[[1,2,3,4],[2,4,5]],["abc","def"]]
。我想打印数据[1] [0],即“abc”到HTML模板。如果不使用循环,我怎么能这样做?
答案 0 :(得分:1)
根据the docs:
您可以使用点(。)来访问变量的属性,替代[sic]可以使用所谓的“下标”语法([])。
给出的例子如下,它声称是等价的:
{{ foo.bar }}
{{ foo['bar'] }}
所以,你可以用任何一种语法来做你想要的,如下所示......
from jinja2 import Template
data = [[[1,2,3,4],[2,4,5]],["abc","def"]]
t1 = Template('Printing {{data.1.0}}')
t2 = Template('Printing {{data[1][0]}}')
t1.render(data=data) # Returns u'printing abc'
t2.render(data=data) # Also returns u'printing agc'
答案 1 :(得分:1)
您是否尝试过与普通python相同的方法?
import jinja2
template = """
{{ data[1][0] }}
"""
data = [[[1,2,3,4],[2,4,5]],["abc","def"]]
print(jinja2.Template(template).render(data=data))
这对我有用。