Python考试题--第78道题目--怎样在jinja2文本中使用if指令进行条件操作--2022年05月03日

原创
小哥 3年前 (2022-10-30) 阅读数 5 #大杂烩

一、jinja2模板语言:

  • 1、{ { … }}:加载变量。当呈现模板时,它将被替换为传递的同名参数所表示的值。
  • 2、{% … %}:加载控制语句,在每个控制语句的末尾,对应的end控制语句、控制变量包装在控制语句和end在控制语句之间。
  • 3、{# … #}:在呈现模板时加载注释并忽略中间值。

1、if语句:

{% if newlist %}
    {{newlist}}
{{ elif list1}}
    {{list1}}
{% else %}
    {{list2}}
{% endif %}

2、for语句:

{% for i in list1 %}
{{i}} {% endfor %}

2.示例代码演示:

1,呼叫模板:

from flask import *
app = Flask(__name__)

@app.route(/)
def index():
    return render_template(if1.txt, user = bill, intValue = 77, list = [1, 2, 3], dict = {a: b}, value=None)

"""
列表或词典,None或空的,被认为是Flase,否则是True。
"""

if __name__==__main__:
    app.run()

2、模板内容if.txt文件:


    
        
        条件控制
    
    
    
          
	      
	
     
    
        {% if user %}
            hello, {{user}}!
        {% else %}
            hello Stranger!
        {% endif %}
    

{% if not intValue %} intValue的值为0 {% elif (intValue > 10) and (intValue < 20) %} intValue的值在10和20之间 {% elif intValue > 100 %} intValue的值大于100 {% else %} intValue为其他值 {% endif %} {% if list %} {% for i in list %}

列表:{{i}}

{% endfor %} {% endif %}

执行结果如下:

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除