从python genshi中删除最后一个逗号for循环

时间:2016-03-22 10:17:20

标签: python genshi

我正在使用python genshi NewTexTemplate来生成代码。某些代码块以逗号分隔,因此对于以下代码模板,例如:

{% for item in data.items %}
{ 
   // fill template here 
     print item

}, 
{% end %}

并且项目= [1,2,3],这将产生:

{
 1
},
{
 2
},
{
 3
}, 

我想删除最后一个逗号。有没有办法在genshi中检测for循环中的最后一次迭代?我检查了documentation,但似乎没有。

PS:我实际上可以发送一个数据结构,它有一个标志来判断当前迭代是否是最后一个迭代,但我正在探索genshi是否有内置的东西。

1 个答案:

答案 0 :(得分:1)

应该有效的快速和脏修复:

{% for i in range(data.items) %}
    { 
    print data.items[i]
    {% choose i %}
        {% when len(data.items) - 1 %}}{% end %}
        {% otherwise %}},{% end %}
    {% end %}
{% end %}