测试器主要用来判断一个值是否满足某种类型,一般通过普通的if判断。语法是:if...is...
示例代码:
main.py
- from flask import Flask, render_template
-
- app = Flask(__name__)
-
-
- @app.route('/')
- def index():
- name_dict = {
- "name": "dgw"
- }
- num = 6
-
- return render_template('index.html', name_dict=name_dict, num=num)
-
-
- if __name__ == '__main__':
- app.run()
index.html
- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>首页title>
- head>
- <body>
- 欢迎来到首页!
- <div>
- {% if name_dict is string %}
- String value is : {{ name_dict }}
- {% else %}
- The value is not a string!
- {% endif %}
- div>
- <div>
- {% if num is even %}
- num value is : {{ num }}
- {% else %}
- The value is not a even!
- {% endif %}
- div>
- body>
- html>
运行结果:

其它常见的Jinja2测试器如下表所示:
| 测试器 | 说明 |
|---|---|
callable(object) | 是否可调用 |
defined(object) | 是否已经被定义了。 |
escaped(object) | 是否已经被转义了。 |
upper(object) | 是否全是大写。 |
lower(object) | 是否全是小写。 |
string(object) | 是否是一个字符串。 |
sequence(object) | 是否是一个序列。 |
number(object) | 是否是一个数字。 |
odd(object) | 是否是奇数。 |
even(object) | 是否是偶数。 |