Python_Flask学习笔记

1.配置
在这里插入图片描述

  1. 查询字符串的形式传参
@app.route('/book/list')
def book_list():page = request.args.get('page',default=1,type=int)return f"您获取的是{page}的图书列表!"if __name__ == '__main__':app.run()

在这里插入图片描述
3.HTML模版渲染

from flask import Flask,render_templateapp = Flask(__name__)
@app.route('/')
def index():return render_template('index.html')if __name__ == "__main__":app.run()

在这里插入图片描述
4.使用HTML传参

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>中科汇成</title>
</head>
<body>
<h1>您的book_id是{{ blog_id }}</h1>
</body>
</html>
from flask import Flask,render_templateapp = Flask(__name__)@app.route('/blog/<int:blog_id>')
def blog(blog_id):return render_template('blog.html',blog_id=blog_id)
if __name__ == "__main__":app.run()

5.类属性传递

from flask import Flask,render_templateapp = Flask(__name__)class User:def __init__(self,name,age):self.name = nameself.age = agedef __str__(self):return f"User(name={self.name},age={self.age})"@app.route('/')
def hellow_world():user = User(name='张三',age=18)return render_template('index.html',user=user)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>中科汇成</title>
</head>
<body>
用户姓名{{ user.name }}
用户年龄{{ user.age }}
</body>
</html>

6.字典类型数据传递

from flask import Flask,render_templateapp = Flask(__name__)class User:def __init__(self,name,age):self.name = nameself.age = agedef __str__(self):return f"User(name={self.name},age={self.age})"@app.route('/')
def hellow_world():user = User(name='张三',age=18)person = {"name": "李四","age": 20}return render_template('index.html',user=user,person = person)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>中科汇成</title>
</head>
<body>{{ person.name }}{{ person.age }}{{ person['name'] }}
{{ person['age'] }}
</body>
</html>

7.过滤器(传参之前先抛给一个函数处理)

from flask import Flask,render_templateapp = Flask(__name__)class User:def __init__(self,name,age):self.name = nameself.age = agedef __str__(self):return f"User(name={self.name},age={self.age})"@app.route('/filter')
def filter():user = User(name='张三11111',age=18)return render_template('filter.html',user=user)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>{{ user.name|length }}</body>
</html>

8.自定义过滤器

from flask import Flask,render_template
from datetime import datetime
app = Flask(__name__)class User:def __init__(self,name,age):self.name = nameself.age = agedef __str__(self):return f"User(name={self.name},age={self.age})"def datetime_format(value,format='%Y-%d-%m %H:%M'):return value.strftime(format)
app.add_template_filter(datetime_format,'dformat')@app.route('/filter')
def filter():user = User(name='张三11111',age=18)mytime = datetime.now()return render_template('filter.html',user=user,mytime = mytime)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>{{ mytime|dformat }}</body>
</html>

9.流程控制

from flask import Flask,render_template
from datetime import datetime
app = Flask(__name__)@app.route('/control')
def control():return render_template('control.html',age=17)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>{% if age < 18 %}<p>未成年</p>{% elif age==18 %}<p>成年</p>{% else %}<p>老年</p>{% endif %}
</body>
</html>
  1. 控制语句2
from flask import Flask,render_template
from datetime import datetime
app = Flask(__name__)@app.route('/control')
def control():books = [{"name": "book1", "author": "author1"},{"name": "book2", "author": "author2"},]return render_template('control.html',books=books)if __name__ == "__main__":app.run()
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><h1>控制台</h1>
{% for book in books %}
<div>名称:{{ book.name }},作者:{{ book.author }}</div>
{% endfor %}
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3281517.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

C#知识|对象序列化与反序列化

哈喽,你好啊,我是雷工! 前面练习了将数据存储到TXT文件,今天接着学习对象系列化与XML文件基础的应用, 以下为学习笔记。 01 对象的序列化 序列化是在开发中非常常见的,无论是WinForm开发,还是Web开发都会用得到序列化。 1.1、文本保存对象的缺点 txt文件可以用记事本直…

【p-export-excel】一个轻松实现Excel文件导出的JavaScript插件

p-export-excel&#xff08;github&#xff1a;https://github.com/pbstar/p-export-excel&#xff09;是一个功能强大的JavaScript插件&#xff0c;专门用于导出Excel文件。它支持xlsx和csv两种格式&#xff0c;且提供了丰富的配置选项&#xff0c;允许开发者根据实际需求进行…

贝斯和吉他的区别,怎么打贝斯谱子?一来看看贝斯和吉他的区别,怎么打贝斯谱子的相关内容

在音乐的浩瀚宇宙中&#xff0c;贝斯与吉他作为两大支柱性乐器&#xff0c;虽外观相仿&#xff0c;实则内在差异显著&#xff0c;各自以独特的音色与演奏技法在乐队中发挥着不可或缺的作用。 首先&#xff0c;从音乐功能来看&#xff0c;贝斯以其深沉有力的低音线条&#xff0c…

飞书打卡 快捷指令

使用快捷指令定时飞书打卡 在网上找了一圈&#xff0c;只有钉钉打卡的快捷指令&#xff0c;但是公司换飞书&#xff0c;哪个打工人不怕忘记打卡呢&#xff0c;所以自己研究了一下&#xff0c;其实也很简单。 找url 问题的最关键是打开飞书的打卡界面 如果只是打开飞书APP 很…

iPhone 上的误删的联系人去哪了?如何从 iPhone 上找回联系人的 4 种方法

如果您丢失了所有 iPhone 联系人&#xff0c;那将是一场灾难&#xff0c;因为许多人没有记住电话号码的习惯。iPhone 联系人恢复可以让整个过程变得更容易。如果您仍然对如何在 iPhone 上恢复联系人感到困惑&#xff0c;您可以找到有关 5 个出色解决方案的更多详细信息。只需阅…

C++11 可变参数模板

C11的新特性可变参数模板能够创建可以接受可变参数的函数模板和类模板&#xff0c;相比C98/03&#xff0c;类模版和函数模版中只能含固定数量的模版参数&#xff0c;可变模版参数无疑是一个巨大的改进。然而由于可变模版参数比较抽象&#xff0c;使用起来需要一定的技巧&#x…

书面表达优化助手

大家在写文章时肯定被自己的文章写的不够好而烦恼&#xff0c;但是自己又往往看不出问题在哪里&#xff0c;那么有没有一款工具可以根据自己写的文章&#xff0c;给出一个内容优化建议呢&#xff1f; 下面给大家介绍一下书面表达优化助手&#xff0c;它可以根据你的文章给出一个…

已经10岁的K8S,在很多方面仍需努力

/ K8S 已经 10 岁了&#xff0c;但仍然有许多方面要继续努力 / Kubernetes 于 2014 年 6 月推出&#xff0c;自那时起&#xff0c;它在推广云原生应用设计和支持更多微服务部署方面发挥了巨大作用。容器部署的增长非常迅速&#xff0c;而 Kubernetes 对于企业管理这些部署至关重…

FlashAttention解析——大预言模型核心组建

论文名称&#xff1a;FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness 论文地址&#xff1a;https://arxiv.org/abs/2205.14135 一、研究FlashAttention的Motivate FlashAttention技术在现在的主流大语言模型中均有应用&#x…

Java--多态和抽象类

目录 多态实现多态的条件重写重写和重载静态绑定和动态绑定向上转型和向下转型向上转型向下转型instanceof 抽象类 多态 在Java中多态就是在完成一件事的时候&#xff0c;不同人去完成产生的结果不同 比方说打印&#xff0c;我们就是要打印一个东西&#xff0c;如果我们交给彩色…

性能提升20%,字节跳动HTTPDNS从中心下沉到边缘

摘要&#xff1a;本文介绍了HTTPDNS服务从中心迁移至边缘详细的落地过程。主要内容为&#xff1a; HTTPDNS下沉边缘实践遇到的挑战&#xff0c;包括服务放置、流量调度 HTTPDNS下沉边缘解决方案 从性能、成本出发&#xff0c;谈谈HTTPDNS下沉边缘后的收益 传统的DNS流程中…

微信小程序-获取手机号:HttpClientErrorException: 412 Precondition Failed: [no body]

问题&#xff1a; 412 异常就是你的请求参数获取请求头与服务器的不符&#xff0c;缺少请求体&#xff01; 我的问题&#xff1a; 我这里获取微信手机号的时候突然给我报错142&#xff0c;但是代码用的是原来的代码&#xff0c;换了一个框架就噶了&#xff01; 排查问题&am…

java算法day27

java算法day27 动态规划初步总结509 斐波那契数杨辉三角打家劫舍完全平方数 动态规划初步总结 如果你感觉某个问题有很多重叠子问题&#xff0c;使用动态规划是最有效的。 动态规划的过程就是每一个状态一定是由上一个状态推导出来的&#xff0c;这一点就区分于贪心了。贪心是…

鄂维南院士:人工智能的零数据、小数据、大数据和全数据方法

源自&#xff1a; 中国计算机学会 注&#xff1a;若出现无法显示完全的情况&#xff0c;可 V 搜索“人工智能技术与咨询”查看完整文章 人工智能、大数据、多模态大模型、计算机视觉、自然语言处理、数字孪生、深度强化学习 课程也可加V“人工智能技术与咨询”报名参加学习 致…

android java socket server端 可以不断的连接断开,不断的收发 TCP转发

adb.exe forward tcp:5902 tcp:5902 前面本地5901 转发到 后面设备为5902查看转发 adb forward --list删除所有转发 adb forward --remove-allpublic static final String TAG "Communicate";private static boolean isEnable;private final WebConfig webConfig;//…

四步教你快速解决UE5文件迁移失败❗️

本期作者&#xff1a;尼克 易知微3D引擎技术负责人 不知道大家在用UE5迁移文件时&#xff0c;有没有发现这个问题&#xff1a;如果文件输出的路径选择了非项目路径&#xff0c;那么UE会提示无法迁移。在UE4中&#xff0c;这样做是不存在问题的&#xff0c;只要选择「忽略」就可…

Studying-代码随想录训练营day48| 739. 每日温度、496.下一个更大元素 I、503.下一个更大元素II

第48天&#xff0c;单调栈part01&#xff0c;栈的特殊应用场所&#xff01;编程语言&#xff1a;C 目录 739. 每日温度 496.下一个更大元素 I 503.下一个更大元素II 总结&#xff1a; 739. 每日温度 文档讲解&#xff1a;代码随想录每日温度 视频讲解&#xff1a;手撕每日…

AI识别智能称重-收银系统源码

系统概况 专门为零售行业的连锁店量身打造的收银系统&#xff0c;适用于常规超市、生鲜超市、水果店、便利店、零食专卖店、服装店、母婴用品、农贸市场等类型的门店使用。同时线上线下数据打通&#xff0c;线下收银的数据与小程序私域商城中的数据完全同步&#xff0c;如商品…

什么是数据血缘?怎么做好数据血缘分析?

目录 一、什么是数据血缘&#xff1f; 二、数据血缘关系的四大特征 三、数据血缘分析怎么做&#xff1f; 1.定义元数据模型 2.收集元数据 3.建立血缘关系模型 4.追踪数据流动 5.可视化分析 6.集成到数据治理中 7.持续更新和维护 8.应用分析结果 四、数据血缘技术趋势 1.通用的血…

测试环境领域到测试环境产品

作者&#xff1a;攻心 去年之前&#xff0c;阿里巴巴的淘天集团测试环境是以领域方式运作&#xff1a;不局限测试环境治理本身&#xff0c;从测试模式方法论及用好测试环境思路引领集团测试环境治理。领域运作最难的是“统一思想”。业务进一步细分调整后&#xff0c;测试环境治…