企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 循环语句for 输入: ~~~ {% set data = ['one': 1, 'two': 2, 'three': 3] %} {% for value in data %} Value: {{ value }}<br> {% endfor %} ~~~ 输出: ~~~ Value:1 Value:2 Value:3 ~~~ 输入: ~~~ {% for name, value in data %} Name: {{ name }} Value: {{ value }}<br> {% endfor %} ~~~ 输出: ~~~ Name: one Value:1 Name: two Value:2 Name: three Value:3 ~~~ for循环与if语句连用: ~~~ {% for name,value in data if value < 2 %} Value: {{ value }}<br> {% endfor %} ~~~ 输出: ~~~ Value:1 Value:2 ~~~ for循环与else/elsefor连用(当data中的元素个数为0时,else/elsefor语句将被执行) 用法示例: ~~~ {% set data = [] %} {% for name,value in data %} Value: {{ value }}<br> {% else %} 暂无内容<br> {% endfor %} {% for name,value in data %} Value: {{ value }}<br> {% elsefor %} 暂无内容 {% endfor %} ~~~ `break`break语句用于跳出循环 用法示例: 输入: ~~~ {% set data = ['one': 1, 'two': 2, 'three': 3] %} {% for name,value in data %} {% if name == 'two' %} {% break %} {% endif %} {{ value }} {% endfor %} ~~~ 输出: ~~~ 1 ~~~ ## 循环上下文(Loop Context) 循环上下文关键字 loop 在for循环中可用,使用它,你可以方便的进行一些判断和计数操作。 我们可以把它看做是一个循环计数器,用它来记录元素在当前循环中的位置。 loop中主要包含以下可用属性: | 变量 | 描述 | | :-: | :-: | | loop.index | 当前元素在从1开始计数的循环计数器中的位置 | | loop.index0 | 当前元素在从0开始计数的循环计数器中的位置 | | loop.revindex | 当前元素在逆向从1开始计数的循环计数器中的位置 | | loop.revindex0 | 当前元素在逆向从0开始计数的循环计数器中的位置 | | loop.first | 是否是循环中的第一个元素 | | loop.last | 是否是循环中的最后一个元素 | | loop.length | 循环中的元素个数 | 用法示例: `loop.index` 输入: ~~~ {% set data= ['a','b','c'] %} {% for value in data %} {{ loop.index }} {% endfor %} <br /> {% for value in data %} {{ loop.index0 }} {% endfor %} <br /> {% for value in data %} {{ loop.revindex }} {% endfor %} <br /> {% for value in data %} {{ loop.revindex0 }} {% endfor %} ~~~ 输出 ~~~ 1 2 3 0 1 2 3 2 1 2 1 0 {% set data = [['id':0,'name':'a'],['id':1,'name':'b'],['id':2,'name':'c']] %} {% for value in data %} {% if loop.first %} <table> <tr> <th>#</th> <th>Id</th> <th>Name</th> </tr> {% endif %} <tr> <td>{{ loop.index }}</td> <td>{{ value['id'] }}</td> <td>{{ value['name'] }}</td> </tr> {% if loop.last %} </table> {% endif %} {% endfor %} ~~~