我正在使用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是否有内置的东西。
答案 0 :(得分:1)
应该有效的快速和脏修复:
{% for i in range(data.items) %}
{
print data.items[i]
{% choose i %}
{% when len(data.items) - 1 %}}{% end %}
{% otherwise %}},{% end %}
{% end %}
{% end %}