gpt4 book ai didi

python - 在 HTML 中循环字典

转载 作者:行者123 更新时间:2023-11-30 23:31:49 31 4
gpt4 key购买 nike

我有一个 Python 脚本,创建一个字典并将其传递到 html 页面以生成报告。

在Python中:

data_query= {}
data_query["service1"] = "value1"
data_query["service2"] = "value2"
return data_query

在 HTML 中:

% for name, count in data_query:
<tr>
<td>${name}</td>
<td>${count}</td>
</tr>
% endfor

它不起作用,说它没有返回足够的值。

我也尝试过(在另一个问题的评论中指出,我错误地删除了):

% for name, count in dict.iteritems():

它没有给出任何错误,但不起作用。什么也不显示。

${len(dict)}

给出正确的字典长度

${len(dict.iteritems())}

不显示任何内容,并且似乎对我的表格格式产生了奇怪的影响。

有没有办法在 HTMl 中正确迭代字典以显示键和值?

编辑:我如何将字典传输到 html 页面。

from mako.lookup import TemplateLookup
from mako.runtime import Context
from mako.exceptions import text_error_template

html_lookup = TemplateLookup(directories=[os.path.join(self.dir_name)])
html_template = html_lookup.get_template('/templates/report.html')
html_data = { 'data_queries' : data_queries }
html_ctx = Context(html_file, **html_data)
try:
html_template.render_context(html_ctx)
except:
print text_error_template().render(full=False)
html_file.close()
return
html_file.close()

最佳答案

% for name, count in dict.items:
<tr>
<td>${name}</td>
<td>${count}</td>
</tr>
% endfor

应该可以工作...通常,当您将 fn 传递给模板语言时,您不会调用它...或者

% for name in dict:
<tr>
<td>${name}</td>
<td>${dict[name]}</td>
</tr>
% endfor

也可能有效

顺便说一句...... dict 是一个可怕的变量名,因为它隐藏了内置字典(如果这实际上是你的变量名,这可能是你的问题的一部分)

关于python - 在 HTML 中循环字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19691159/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com