Mako 是高性能 Python 模板库,支持变量插入 ${}、逻辑控制 %、模板继承与文件加载,通过 Template 和 TemplateLookup 渲染动态内容,自动转义 HTML 防 XSS,可结合 markup 输出原始 HTML,适用于 Flask 等 Web 框架。

Mako 是一个高性能的 Python 模板库,常用于 Web 开发中生成动态 HTML、XML 或其他文本内容。它语法简洁,支持嵌套模板、继承、变量替换和逻辑控制,适合与 Flask、Django 或其他框架集成。
使用 pip 安装:
pip install Mako你可以直接用字符串创建模板并渲染数据:
from mako.template import Templatetemplate = Template("Hello, ${name}!") print(template.render(name="Alice"))
输出:
立即学习“Python免费学习笔记(深入)”;
Hello, Alice!${} 用于插入变量,Mako 会自动转义 HTML 特殊字符(可关闭)。
实际项目中通常将模板保存在文件中。
1. 创建目录 templates,新建文件 hello.html:
<html> <body> <h1>Welcome, ${name}!</h1> % if items: <ul> % for item in items: <li>${item}</li> % endfor </ul> % else: <p>No items found.</p> % endif </body> </html>2. 在 Python 中加载并渲染:
beta v1.1版本为第一个版本,简单的整合了基础功能,各位站长拿到程序后,不要纠结后台的功能简单,后续将不断更新扩展。在beta v1.1版本使用过程中遇到什么问题,请登录 www.loftto.com 进行反馈! 安装说明######重要提醒:程序不支持二级目录安装,请使用一级目录或二级目录绑定!#第一步,确定你的服务器支持PHP+mysql。#第二步,确定你的服务器开启了gd库。#第三步,
0
mylookup = TemplateLookup(directories=['templates'])
template = mylookup.get_template("hello.html")
print(template.render(name="Bob", items=["Apple", "Banana"]))
通过继承实现页面结构统一。
1. 创建基础模板 base.html:
<html> <head> <title>${self.title()}</title> </head> <body> <header><h1>My Site</h1></header> <main> ${self.body()} </main> </body> </html><%def name="title()">Default Title<%def>
2. 创建子模板 home.html 继承 base.html:
<%inherit file="base.html"/> <%def name="title()">Home Page<%def><%def name="body()"> <h2>Home Content</h2> <p>Welcome, ${name}!</p> <%def>
3. 渲染:
template = mylookup.get_template("home.html") print(template.render(name="Charlie"))from markupsafe import Markup
基本上就这些。Mako 上手快,功能强,适合需要灵活控制输出的场景。
以上就是python中Mako库怎么用?的详细内容,更多请关注php中文网其它相关文章!
python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号