循环遍历python列表并在flas中显示结果

2024-09-28 22:19:36 发布

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

函数返回一个python列表

python模块函数

with open(xml_append_back) as fd1:
    doc = xmltodict.parse(fd1.read())
    codes = []

    for p in doc['Des']['Config']:
            codes.append(p['@Id'])
            codes.append(pl['@name'])


print(codes)
return codes

codes = ['f2ee4681', 'Conf. no: 1', '89282c5b', 'Conf. no: 2', '3e9dd219', 'Conf. no: 3', '773044b9'] # returned from python  to flask template result.html

我在模板中调用这个变量/烧瓶.html这样地 烧瓶锉

^{pr2}$

在结果.html文件

{% for key,key1  in result1 %}
<tr class="even"><td>{{ key }}</td><td>{{ key1 }}</td></tr> 

应该是

<tr class="even"><td>f2ee4681</td><td>Conf. no: 1</td></tr>
{% endfor %}

我做错什么了


Tags: key函数noinfordoc烧瓶conf
2条回答

当前,您的代码正在将所有Idname值打包到一个单一的平面列表中。当您以后需要迭代它时,这种方法就行不通了,因为每次迭代需要两个值,而您只得到一个值。在

虽然有一些方法可以迭代列表中的对(例如zip(*[iter(x)]*2)),但我建议您直接构建一个元组列表。在

尝试更改:

        codes.append(planet['@Id'])
        codes.append(planet['@name'])

收件人:

^{pr2}$

来回答我自己的问题 我在python代码中使用了zip实用程序,因为在flask中没有zip

function returncodes()
   -
    - 

return zip(codes,codeNames) # in my case

烧瓶模板没有变化

^{pr2}$

现在在我的结果.html在

{% for keys,keys2 in result1 %}
<tr class="even"><td>{{keys}}</td><td>{{keys2}}</td></tr>

 {% endfor %}

相关问题 更多 >