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>

效果

相关推荐
辞旧 lekkk3 小时前
【Redis初阶】常见数据类型
开发语言·数据库·c++·redis·学习·缓存·bootstrap
帅次3 小时前
Kotlin 与 Java 互操作:混合工程里的平台类型与 API 边界
java·开发语言·kotlin·suspend·nullable
dtq04245 小时前
C语言-结构体详解
c语言·开发语言·学习
梅雅达编程笔记5 小时前
编程启蒙|Scratch 转 Python 系列第9天:字典/哈希表积木双向对照(AI大模型参数配置表实战)
开发语言·人工智能·python·numpy·pandas
持力行5 小时前
C++与Java变量声明、定义及内存分配的核心区别
java·开发语言·c++
zhz52146 小时前
GIS项目中空间参考转换与MBTiles偏移:问题成因、解法与避坑
python·vue·gis
jinyishu_6 小时前
C++ 继承全解:从基础到高级特性
开发语言·c++
KaMeidebaby7 小时前
卡梅德生物技术快报|如何制备单克隆抗体:小众禽类靶点单抗制备实操流程:双载体抗原交叉筛选完整工艺记录
人工智能·python·深度学习·算法·机器学习
乱写代码7 小时前
Pydantic学习--BaseModel
python
fu15935745688 小时前
【边缘计算实战】P1:从零搭建边云任务卸载仿真实验台(Python 可复现)
数据库·python·边缘计算