• 关于Flask模板_过滤器的介绍和使用


    Flask模板_过滤器

    一.过滤器的介绍

    过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过 滤器根据自己的功能,再返回相应的值,之后再将结果渲染到页面 中。
    过滤器名解释举例
    abs(value)返回一个数值的绝对 值1 | abs
    int(value)将值转换为int类型
    float(value)将值转换为float类型
    string(value)将变量转换成字符串
    default(value,default_value,boolean=false)如果当前变量没有 值,则会使用参数中 的值来代替。如果想 使用python的形式判 断是否为false,则可 以传递 boolean=true。也可 以使用or来替换name | default(‘默认值’)
    safe(value)如果开启了全局转 义,那么safe过滤器 会将变量关掉转义content_html | safe
    escape(value)或e转义字符,会将<、> 等符号转义成HTML 中的符号content | escape 或 e
    first(value)返回一个序列的第一 个元素names | first
    format(value,*arags,**kwargs)格式化字符串
    last(value)返回一个序列的最后 一个元素。示例: names | last
    length(value)返回一个序列或者字 典的长度。示例: names | length
    join(value,d=‘+’)将一个序列用d这个 参数的值拼接成字符 串
    lower(value)将字符串转换为小写
    upper(value)将字符串转换为大写
    replace(value,old,new)替换将old替换为new 的字符串
    truncate(value,length=255,killwords=False)截取length长度的字 符串
    striptags(value)删除字符串中所有的 HTML标签,如果出 现多个空格,将替换 成一个空格
    trim截取字符串前面和后 面的空白字符
    wordcount(s)计算一个长字符串中 单词的个数

    二.实例

    html源码:
    DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>过滤器的使用title>
    head>
    <body>
        
        <h2>整型过滤器在过滤前的数值:{{ num }}h2>
        <h2>整型过滤器在过滤后的数值:{{ num | int }}h2>
        <p>默认过滤器在过滤前的用户名:{{ name }}p>
        <p>默认过滤器在过滤后的用户名:{{ name  | default('00-xx',boolean=true) }}p>
        <br>
    
        
        <h3>模板中默认是全局转义的,转义内容是:{{ info }}h3>
        <h3>用过滤器关闭转义后的内容: {{ info | safe }}h3>
        <h3>用过滤器开启转义后的内容: {{ info | escape }}h3>
        {% autoescape true%}       >
        {{ info }}
        {% endautoescape %}
        <br>
        <br>
        <br>
    
        
        绝对值过滤器:-6--> {{ -6 | abs }} <br>
        浮点过滤器:6--> {{ 6 | float }}   <br>
        字符串过滤器:123--> {{ 123 | string }}  <br>
        格式化过滤器:   {{ '%s---%s' | format('hello~','你好哇~') }}    <br>
        字符串长度过滤器: {{ 'aaaa' | length }} <br>
        返回第一个字符过滤器:   {{'abcd' | first}}  <br>
        返回最后一个字符过滤器: {{'abcd' | last}}   <br>
        记录词数量过滤器:   {{'aa bb cc' | wordcount}}  <br>
        替换过滤器: {{'哈哈 呵呵' | replace('哈哈 呵呵','嘿嘿嘿')}} <br>
    
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    python源码:
    #coding=utf-8
    
    from flask import Flask,render_template
    
    app = Flask(__name__,template_folder='htmls')
    
    @app.route('/')
    def show():
        info = '

    哈哈哈

    '
    return render_template('过滤器.html',name='',num=88.8,info=info) if __name__ == '__main__': app.run(debug=True)
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    在这里插入图片描述

    注:

    如果觉得笔记有些问题,麻烦在百忙之中在评论中指正,或提出建议!另外,如果觉得这份笔记对你有所帮助,麻烦动动发财的小手手点一波赞!

  • 相关阅读:
    【无标题】
    TensorFlow2.x基础与mnist手写数字识别示例
    第十五天Paddle实现分类和利用VGG实现
    August 2022 release交互式图表和地图
    宏观视角下的浏览器
    基于MCMC的交通量逆建模(Matlab代码实现)
    多尺度残差超分辨率
    哪个牌子的led灯质量好?2022LED护眼台灯最好的品牌有哪些
    2022.07 排列组合
    appium
  • 原文地址:https://blog.csdn.net/qq_55961861/article/details/126504109