从Python Genshi循环中剥离最后一个逗号

2024-04-25 20:27:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用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是否为此内置了一些东西。你知道吗


Tags: 代码in模板fordatahereitemstemplate
1条回答
网友
1楼 · 发布于 2024-04-25 20:27:06

快速和肮脏的解决办法,应该工作:

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

相关问题 更多 >