Python Flask 自定义过滤器

复制代码
{{ data.list | li2 }}

li2就是自定义的

复制代码
from flask import Flask, render_template

app = Flask(__name__)


@app.route("/index")
def index():
    data = {
        'name': "张三",
        "age": 18,
        'list': [123123, 41, 123]
    }
    return render_template("index2.html", data=data)


'''
li = [1, 2, 3, 4, 5]
返回 1 3 5
'''


def list_step(li):
    return li[::2]


# 注册过滤器
# 参数1 函数名字
# 惨数2 要用的函数名称
app.add_template_filter(list_step, 'li2')


if __name__ == '__main__':
    app.run()

'list': 123123, 41, 123 我们取出来奇数的

python_flask/templates/index.html

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
Hello world
<br>
{{ data.name }}
<br>
{{ data.age }}
<br>
{{ data.list[1] }}
<br>
{{ "hello_world" | upper | replace('HELLO','HI') }}
<br>
{{ data.list | li2 }}

</body>
</html>

效果

相关推荐
wifi___3 小时前
全局异常处理的原理
java·开发语言
平常心的技术小牛7 小时前
Qt-快速上手-QMenuBar
开发语言·qt
青 春 记 忆7 小时前
零基础入门Python11|Git实战:为任务管理器建立版本历史
开发语言·git·vscode·python·python3.11
Python私教7 小时前
多个项目怎么安全合并?先适配,再切换
后端·python·架构
余额瞒着我当琳9 小时前
C++--深拷贝三件套 + swap + 写时拷贝 + vector 扩容 + reserve
java·开发语言·c++
坐吃山猪9 小时前
WebClient内存配置解析
开发语言·springboot·webflux
北斗落凡尘9 小时前
LangGraph 入门实战(12)--使用MCP
后端·python·langchain
jdksjw10 小时前
同步与异步、阻塞与非阻塞、多线程、协程超详细讲解(Python并发编程从入门到精通)
开发语言·python
Zach_菠萝侠10 小时前
【DeepSeek Harness 研究】进化方向4:安全加固 思考、设计与实现
开发语言·安全·deepseek
Mike_Zhang10 小时前
使用python统计FreeSWITCH呼叫并发
python·freeswitch