学习Jinja2 模板语法
时间: 2024-03-14 11:47:14 浏览: 65
实训报告-3-jinja2模板操作题
Jinja2 是一种流行的 Python 模板引擎,用于生成动态网页和文本文件。它提供了丰富的模板语法,支持变量、表达式、控制语句、过滤器、宏等功能,可以方便、灵活地生成各种格式的输出。下面是一些常用的 Jinja2 模板语法:
1. 输出变量
使用 `{{ variable }}` 语法可以在模板中输出变量的值,例如:
```
Hello, {{ name }}!
```
这个模板中使用了变量 `name`,它会在渲染时被替换为相应的值。
2. 控制语句
使用 `{% %}` 语法可以在模板中使用控制语句,例如:
- `if` 语句:判断条件是否成立,例如:
```
{% if user %}
Hello, {{ user }}!
{% endif %}
```
- `for` 循环:遍历序列并执行循环体,例如:
```
{% for item in items %}
{{ item }}
{% endfor %}
```
- `with` 语句:定义变量并限定作用域,例如:
```
{% with title="Hello" %}
{{ title }}
{% endwith %}
```
3. 过滤器
使用 `|` 语法可以在模板中应用过滤器,例如:
```
{{ text|truncate(80) }}
```
这个模板中使用了 `truncate` 过滤器,它可以截断文本并添加省略号,使其不超过 80 个字符。
4. 宏
使用 `{% macro %}` 语法可以在模板中定义宏,例如:
```
{% macro hello(name) %}
Hello, {{ name }}!
{% endmacro %}
```
这个模板中定义了一个宏 `hello`,它可以接受一个参数 `name`,并输出相应的问候语。
以上是 Jinja2 的一些常用语法,Jinja2 还提供了更多的语法和功能,可以根据具体需求进行学习和使用。
阅读全文