Тест in
Тест in применяется к значению и проверяет,
содержится ли оно в переданной последовательности,
строке или словаре. Первым параметром передаётся
коллекция для поиска. Если значение найдено, тест
возвращает True, иначе - False.
Тест удобно использовать в условиях if и
выражениях Jinja.
Синтаксис
{{ value in sequence }}
Пример
Давайте проверим, содержится ли строка 'abcde'
в списке:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
arr = ['a', 'b', 'c', 'd', 'e']
return render_template('index.html', arr=arr)
{% if 'abcde' in arr %}
<p>found</p>
{% else %}
<p>not found</p>
{% endif %}
Результат выполнения кода:
<p>not found</p>
Пример
Давайте проверим вхождение элемента 'c' в список:
{% if 'c' in arr %}
<p>found</p>
{% else %}
<p>not found</p>
{% endif %}
Результат выполнения кода:
<p>found</p>
Пример
Давайте проверим вхождение ключа 'user' в словарь:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def index():
data = {'user': 'abcde', 'role': 'admin'}
return render_template('index.html', data=data)
{% if 'user' in data %}
<p>key exists</p>
{% endif %}
Результат выполнения кода:
<p>key exists</p>