要在Tornado模板中遍历一个二维数组,你可以使用Tornado的模板语法来实现迭代和显示数组中的每个元素。
以下是一个示例,演示如何在Tornado模板中遍历和显示二维数组的内容:
template.html:
<!DOCTYPE html>
<html>
<head><title>Tornado Template Example</title>
</head>
<body><table>{% for row in array %}<tr>{% for col in row %}<td>{{ col }}</td>{% end %}</tr>{% end %}</table>
</body>
</html>
app.py:
import tornado.ioloop
import tornado.webclass TemplateHandler(tornado.web.RequestHandler):def get(self):array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] # 二维数组示例self.render("template.html", array=array)if __name__ == "__main__":app = tornado.web.Application([(r"/", TemplateHandler)])app.listen(8888)tornado.ioloop.IOLoop.current().start()
在这个示例中,我们创建了一个名为TemplateHandler
的请求处理器。在get
方法中,我们初始化一个二维数组array
。然后,我们使用self.render
方法来渲染template.html
模板,并将数组传递给模板中的array
变量。
在template.html
中,我们使用Tornado的模板语法来进行迭代。通过{% for row in array %}
开始一个外部循环,遍历数组中的每一行。在内部循环中,{% for col in row %}
遍历当前行的每个元素。通过{{ col }}
将当前元素显示到视图中。
当你访问http://localhost:8888/
时,Tornado将渲染模板并在浏览器中显示二维数组的内容。每个元素将显示在HTML表格的单元格中。
注意:上述示例中,模板文件template.html
应该与app.py
在同一目录中。如果不是,在self.render
方法中可以指定模板文件的路径。例如:self.render("templates/template.html", array=array)
。