如何使用Flask-Jinja Python列表中的列表

时间:2017-06-04 04:08:20

标签: python arrays list flask jinja2

我尝试在网页上创建几个带数据导入的表格!我正在使用Flask-Jinja和Python。 例如,我有这个双重列表:

selected

我想将它与循环分开,并在一个页面上创建2个不同的表。 如果我使用带有list [0]的Python,我会获得1-st子列表,但是当我在Flask上尝试它时:

selected=false

它回归我 - model1和model4)为什么会发生?如何从列表中获取第一个子列表?你有什么想法吗?谢谢!

list = [[{'pricebb': 1199.99, 'model': 'model1', 'pricebh': 1199, 'pricea': 1299},  {'pricebb': 1199.99, 'model': 'model2', 'pricebh': 1199, 'pricea': 1299}, {'pricebb': 1499.99, 'model': 'model3', 'pricebh': 1499, 'pricea': 1599}], [{'pricebb': 399.99, 'model': 'model4', 'pricebh': 459, 'pricea': 499}, {'pricebb': 599.99, 'model': 'model5', 'pricebh': 669, 'pricea': 699}, {'pricebb': None, 'model': 'model6', 'pricebh': 899, 'pricea': 999}]]

这是index.html:

{% for post in posts %}
   <p>{{post[0]}}</p>
       {% endfor %}

1 个答案:

答案 0 :(得分:1)

您可以通过posts[0] - 第一个列表和posts[1]访问内部列表 -  第二个列表(你永远不应该在python中用保留字命名变量 - 不要命名你的var list,而是mylist)。因此,要访问第一个列表的元素,您应该使用:

{% for post in posts[0] %}
    {% for key, value in post.items %}
    <p>{{ key }}: {{ value }}</p>
{% endfor %}

和第二个清单:

{% for post in posts[1] %}
    {% for key, value in post.items %}
    <p>{{ key }}: {{ value }}</p>
{% endfor %}