使用jinja2宏作为函数并键入返回值

2024-06-09 02:51:48 发布

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

我知道可以将宏用作返回字符串的函数,但它是否可以用作返回类型化值(如int的列表)的函数?你知道吗

例如,我想

{% macro mem_size_list(x) %}
{{ x.events | selectattr("type", "equalto", "memory") | map(attribute="parameters") | map(attribute="size") | map("int") | list }}
{% endmacro %}

{{ mem_size_list(some_json) | sum }}

输出some_json.eventseventevent.parameters.size和。你知道吗

相反,它会产生另一个结果,这是因为宏只产生docx格式的字符串,所以总和应用于字符串而不是int的列表


Tags: 函数字符串eventjsonmap列表sizeattribute