flask的过滤器
过滤器本质就是函数
模版语法中过滤器: {{ 变量名|过滤器(args) }}
常见的过滤器:
1、safe:禁用转译 {{ msg|safe }}
2、capitalize:首字母大写
3、lower和upper 大小写转换
4、title 每个单词首字母大写
5、reverse 反转
6、format格式化
7、truncate 字符串截断
list的操作:
1、first
2、last
3、length
4、sum
5、sort
dict的操作:
案例:
app.py
from flask import Flask from flask import make_response, request, render_template,redirect,url_for import setting,json app = Flask(__name__) app.config.from_object(setting) @app.route('/show') def show(): girls = ["yanan","zhouqiang","nike","puma"] users = [ {"name":"zhouqiang","age":18,"gender":"man","address":"anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"}, {"name": "zhouqiang", "age": 18, "gender": "man", "address": "anhuihefei"} ] msg = '<h1>520快乐</h1>' n1 = " i am a girl Do you like" return render_template('test.html',girls = girls,users = users,msg = msg,n1 = n1) # 如果没有找到匹配的,会以空白字符串填充 if __name__ == '__main__': app.run(host='127.0.0.1', port=5000)
html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>过滤器使用</title> </head> <body> {{ girls|length }} <br> {{ msg }} {{ msg|safe }} #不会将h1标签进行转义 <br> {{ n1|capitalize }} <br> {{ n1|upper }} <br> {{ n1|lower }} <br> {{ n1|reverse }} <br> {{ '%s is %d years old'|format('lily',18) }} <br> {{ n1|truncate(15) }} {{ n1|truncate(15)|upper }} <br> <hr> {{ girls|first }} <br> {{ girls|last }} <br> {{ girls|length }} <br> {#{{ girls|sum }}整型计算#} {{ [1,2,4,32,5]|sum }} <br> {{ [1,4,3,2,5,6,32,23,25]|sort }} <br> <hr> <p> {{ users.0 }} <br> {% for v in users.0.values() %} <p>{{ v }}</p> {% endfor %} <hr> {% for key in users.0.keys() %} <p>{{ key }}</p> {% endfor %} <hr> {% for key,value in users.0.items() %} <p>{{ key }} -- {{ value }}</p> {% endfor %} </p> </body> </html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!