Python 模板模块-Jinjia2

概要

Jinja2 是一个现代的,设计者友好的,仿照 Django 模板的 Python 模板语言。 它速度快,被广泛使用,并且提供了可选的沙箱模板执行环境保证安全

特性

  • 沙箱中执行
  • 强大的 HTML 自动转义系统保护系统免受 XSS
  • 模板继承
  • 及时编译最优的 python 代码
  • 可选提前编译模板的时间
  • 易于调试。异常的行数直接指向模板中的对应行。
  • 可配置的语法

以上皆出自<欢迎来到 Jinja2>

遇到的问题及解决方法

想把变量分隔符{{}}作为普通字符串输出的方法

方法1:在变量分隔符中( {{ )使用变量表达式输出 {{ '{{' }}

from jinja2 import Template
source = "{{name}} {{ '{{' }}name{{ '}}' }}"
template = Template(source)
print (template.render(name='atp'))

output -> atp {{name}}

方法2:使用raw语句

from jinja2 import Template
source = "{{name}}  {% raw %}{{name}}{% endraw %}"
template = Template(source)
print (template.render(name='atp'))

output -> atp {{name}}

你可能感兴趣的:(Python 模板模块-Jinjia2)