如何比较迭代器的内部和外部

2024-09-27 23:22:00 发布

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

我已将模板代码设置为:

{% for f in fs %}
{
            name: '{{f.fname}}',
            data: [{% for items in frequencydata %}
                    {% if {{forloop.parentloop.counter}}=={{forloop.counter}} %}
                       {% for item in items %}
                         {{ item}},
                       {% endfor %}
                    {% endif %}
                   {% endfor %}
]
        },
{% endfor %}

我在中遇到“无法解析”错误

{% if {{forloop.parentloop.counter}}=={{forloop.counter}} %}

正确的方法是什么

更多信息:

我有两张单子

fs ['a','b','c']

frequencydata [[[1990,5],[1991,6]]  ,   [[1990,15],[1991,16]]  ,   [[1990,25],[1991,26]]]

数据在基于位置的列表之间是对应的,我需要将它们一起显示

谢谢


Tags: 代码namein模板forifcounteritems
1条回答
网友
1楼 · 发布于 2024-09-27 23:22:00

在模板标记内使用变量时,不要包含花括号:

{% if forloop.parentloop.counter == forloop.counter %}

如果fs是列表['a', 'b', 'c'],那么包含{{f.fname}}就没有意义。这些字符串没有fname属性

最后,包含{{ item}},意味着数组中的最后一项将有一个尾随逗号,这是无效的

您可能会发现在python中创建对象更容易,使用^{}将其转换为json,并将其传递给模板

相关问题 更多 >

    热门问题