【发布时间】:2021-07-02 06:49:20
【问题描述】:
在烧瓶应用程序中创建的图表中。我必须遍历字典和列表。我现在有这个。
series:
[{
points: [
{% for key, value in Top10.items() %}
{% for color in colors%}
{ x: "{{key}}", y: {{ value }}, fill = "{{ color }}" }, //"" as it is a string
{% endfor %}
{% endfor %}
]
}],
前 10 名 = {"a":10,"b":15,"c":5,"d":8,"e":4,..} 和 颜色 = [“蓝色”、“黑色”、“红色”...]
当前输出:{ x: "a", y: 10, fill = "blue" }, { x: "a", y: 10, fill = "black" }, ....
循环的预期输出是:{ x: "a", y: 10, fill = "blue" }, { x: "b", y: 15, fill = "black" },....
【问题讨论】:
-
那么发生了什么?这不工作吗?或者,您在使用这种方法时是否遇到任何错误?而且,在第一次迭代后,您需要中断哪个循环,是带有 dict 的外循环还是带有列表的内循环?您期望的输出是什么?
-
如果你破坏了
colors,你将得到每个Top10的相同(第一个)颜色。你的意思是问如何同时迭代两个序列?浏览Top10时如何循环颜色?请澄清您的问题,即您预计会发生什么。 -
另外,您似乎正在尝试在模板中呈现 JSON。这不是一个好方法。在控制器中构建您的数据,作为 Python 列表/字典,然后只需执行
{{ data | tojson }}。以您的方式构建 JSON 可能会导致格式错误(更不用说它更难阅读和维护)。这似乎是XY problem。
标签: python flask charts syncfusion syncfusion-chart