我有以下jinja数组:
{'e34': ['120'], 'e24': ['50']}
我想找一个单词是否包含e2
,并将其带到另一个函数。
我做了以下事情:
{% set result = 'default' %}
{% for item, value in jinjaarray.items() %}
{% if 'e2' in item %}
result = item
{% endif %}
{% endfor %}
但它失败了,并没有进入循环。
我该怎么做?
答案 0 :(得分:2)
使用{3}}之类的.items()
,jinja2使用.iteritems()
中所述的Python2-fashioned docs。
此外,您需要result
使用item
set
变量from jinja2 import Template
d = {'e34': ['120'], 'e24': ['50']}
s = """{% set result = 'default' %}
{% for item, value in test_dict.items() %}
{% if 'e2' in item %}
{% set result = item %}
{{ result }}
{% endif %}
{% endfor %}"""
template = Template(s)
print(template.render(test_dict=d))
到字典.items()
:
.iteritems()
由于我在系统上使用Python3,因此我必须调用'\n\n \n \n e24\n \n\n \n'
。您可以根据自己的版本调用e24
。
由于我的系统上没有设置jinja2沙盒环境,因此我必须编写一个快速而脏的代码片段,如上所示。这提供了以下输出:
var searchText = $('#searchText');
expect(searchText.isPresent()).toBeTruthy('Search Text element not present');
光学上说这不是那么好,但它会打印出if let window = application.delegate?.window ?? nil {
print(window.frame)
}
所需的值。