Python_Flask01

所有人都不许学Java了,都来学Python!

如果不来学的话请网爆我的老师---蔡老师

Flask的前世姻缘

我不知道,没啥用,要学好这个框架,其实多读书,多看报就行了,真心想了解的话!

Welcome to Flask — Flask Documentation (3.1.x) (palletsprojects.com)icon-default.png?t=O83Ahttps://flask.palletsprojects.com/en/stable/

创建Flask项目

第一步

点击File,点击NewProject

第二步

 创建成功

简单不?都给我去学习Python!!!!(可以网爆我的老师,但是不能黑我的哥哥)

学习Flask

整体代码

from flask import Flask
from flask import render_template
from flask import requestapp = Flask(__name__)@app.route('/')
def hello_world():  # put application's code herereturn render_template('test.html')@app.route('/detail/<id>/<name>')
# http://127.0.0.1:8085/detail/5/6666 这种形式
def getId(id, name):return render_template('test.html', id=id, name=name)@app.route('/test')
# http://127.0.0.1:8085/test?id=5&name=box&password=666  使用的是query的拼接方式
# 使用的request中的args.get('字段')方式获取这个字段的值
def getQuery():id = request.args.get('id')name = request.args.get('name')password = request.args.get('password')return render_template('user.html', id=id, name=name, password=password)# 这个地方主要是继承的使用方式
@app.route('/child')
def getExtend():return render_template('child.html')@app.route('/static')
def getImage():return render_template('image.html')if __name__ == '__main__':# 启动方法app.run()

解释

根路径

@app.route('/')
def hello_world():  # put application's code herereturn render_template('test.html')

假设服务是http://127.0.0.1:8085

那输入上面的这个路径就会使用render_template工具,随后去寻找test.html文件,将test.html文件的内容进行渲染在页面,下面提供的是test.html文件的内容。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><div>你好</div><div>{{ id }}</div><div>{{ name }}</div>
</body>
</html>

传参方式

@app.route('/detail/<id>/<name>')
# http://127.0.0.1:8085/detail/5/6666 这种形式
def getId(id, name):return render_template('test.html', id=id, name=name)@app.route('/test')
# http://127.0.0.1:8085/test?id=5&name=box&password=666  使用的是query的拼接方式
# 使用的request中的args.get('字段')方式获取这个字段的值
def getQuery():id = request.args.get('id')name = request.args.get('name')password = request.args.get('password')return render_template('user.html', id=id, name=name, password=password)

不能说好理解,只能说非常容易,主要就是request工具获取参数和路径后面直接拼接参数的两种获取方式

加载静态资源

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/index.css') }}">
</head>
<img class="image" src="{{ url_for('static',filename='image/react.png') }}" />
</body>
</html>

使用的方式是url_for的方式去展示静态资源

语法(拿html解释)

<img class="image" src="{{ url_for('static',filename='image/react.png') }}" />

 继承

father.html

<!-- base.html -->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>{% block title %}My Website{% endblock %}</title>
</head>
<body><header><h1>欢迎来到我的网站</h1></header><main>{% block content %}<!-- 默认内容 -->{% endblock %}</main><footer><p>版权所有 &copy; 2023</p></footer>
</body>
</html>

child.html

<!-- child.html -->
{% extends "father.html" %}{% block title %}子页面标题{% endblock %}{% block content %}<h2>这是子页面</h2><p>这里是子页面的内容。</p>
{% endblock %}

测试效果:访问http://127.0.0.1:8085/child

# 这个地方主要是继承的使用方式
@app.route('/child')
def getExtend():return render_template('child.html')

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

借助 AI 工具,共享旅游-卡-项目助力年底增收攻略

年底了&#xff0c;大量的商家都在开始筹备搞活动&#xff0c;接下来的双十二、元旦、春节、开门红、寒假&#xff0c;各种活动&#xff0c;目的就是为了拉动新客户。 距离过年还有56 天&#xff0c;如何破局&#xff1f; 1、销售渠道 针对旅游卡项目&#xff0c;主要销售渠道…

SHELL----正则表达式

一、文本搜索工具——grep grep -参数 条件 文件名 其中参数有以下&#xff1a; -i 忽略大小写 -c 统计匹配的行数 -v 取反&#xff0c;不显示匹配的行 -w 匹配单词 -E 等价于 egrep &#xff0c;即启用扩展正则表达式 -n 显示行号 -rl 将指定目录内的文件打…

基于Pyhton的人脸识别(Python 3.12+face_recognition库)

使用Python进行人脸编码和比较 简介 在这个教程中&#xff0c;我们将学习如何使用Python和face_recognition库来加载图像、提取人脸编码&#xff0c;并比较两个人脸是否相似。face_recognition库是一个强大的工具&#xff0c;它基于dlib的深度学习模型&#xff0c;可以轻松实…

vitepress组件库文档项目 markdown语法大全(修正版)

#上次总结的 有些语法是用在markdown文档中的 使用到vitepress项目中有些语法可能有出入 于是我再总结一版 vitepress项目中的markdown语法大全 在阅读本章节之前&#xff0c;请确保你已经对 Markdown 有所了解。如果你还不了解 Markdown &#xff0c;请先学习一些Markdown 教…

Ubuntu 构建安装 mongocxx 驱动(使用指定版本 mongoc 驱动)

Ubuntu 构建安装 mongocxx 驱动&#xff08;使用指定版本 mongoc 驱动&#xff09; 安装依赖项安装 mongo-cxx-driver测试安装 本文是安装 MongoDB C 驱动程序&#xff08;mongocxx&#xff09;的详细教程&#xff0c;系统使用的是 Ubuntu24。 如果想安装 mongodb 数据库&#…

linux上修改容器网卡docker0为固定ip

修改容器为固定ip段。 1.在一次项目中发现创建的容器网段跟办公室网段有冲突的&#xff0c;导致连接不上。修改容器ip为固定ip 这是默认启动docker自动创建的。172网段 2.修改前先停用运行容器 3.在配置路径下修改vim /etc/docker/daemon.json 4.重启docker systemctl re…

vue 具名插槽

vue 具名插槽 1.slot 插槽ComponentB slot 2. v-slot属性具名插槽 简写 v-slot # 2.1具名插槽 2.2 v-slot 简写 插槽数 据

技术栈6:Docker入门 Linux入门指令

目录 1.Linux系统目录结构 2.处理目录的常用命令 3.Docker概述 4.Docker历史 5.Docker基本组成 6.Docker底层原理 7.Docker修改镜像源 8.Docker基本命令 9.Docker创建Nginx实战 10.数据卷 11.镜像和dockerfile 在学习docker之前我们先要熟悉Linux系统&#xff0c;推…

同为科技(TOWE)柔性定制化PDU插座

随着科技的进步&#xff0c;越来越多的精密电子设备&#xff0c;成为工作生活密不可分的工具。 电子电气设备的用电环境也变得更为复杂&#xff0c;所以安全稳定的供电是电子电气设备的生命线。 插座插排作为电子电气设备最后十米范围内供配电最终核心部分&#xff0c;便捷、安…

hhdb数据库介绍(10-43)

安全 密码安全管理 密码安全管理为用户提供了对计算节点数据库用户与存储节点的连接用户、备份用户的密码有效期监控提醒。到期后自动提示用户修改密码以提升系统的安全性。 数据库用户密码 &#xff08;一&#xff09;密码修改 用户可以在“安全->密码安全管理->数据…

Docker 安装 Yapi

Docker 安装系列 Docker已安装。 1、场景Yapi使用的MongoDB用户信息 1.1 创建自定义 Docker 网络 首先&#xff0c;创建一个自定义的 Docker 网络&#xff0c;以便 MongoDB 和 YApi 容器可以相互通信 [rootflexusx-328569 data]# docker network create yapi-networ…

基于vue框架的的献血管理系统knmx7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;用户,献血车,预约献血,献血记录,献血结果 开题报告内容 基于Vue框架的献血管理系统开题报告 一、课题名称 基于Vue框架的献血管理系统 二、研究背景与意义 随着医疗技术的不断进步和各类突发事件的频发&#xff0c;临床用血需求日益…

青龙面板添加任务执行自己的脚本文件(非订阅) 保姆级图文

目录 效果预览脚本存放的位置创建任务cron规则字段含义&#xff1a;常见的特殊字符&#xff1a; 可能你的脚本需要安装依赖总结 欢迎关注 『青龙面板』 专栏&#xff0c;持续更新中 欢迎关注 『青龙面板』 专栏&#xff0c;持续更新中 效果预览 你的python脚本 print(123)运行…

nginx中tcp_nodelay、types_hash_max_size都是什么配置?

nginx中tcp_nodelay、types_hash_max_size都是什么配置&#xff1f; 在 Nginx 中&#xff0c;tcp_nodelay 和 types_hash_max_size 是两个不同的配置项&#xff0c;它们分别与网络性能优化和 MIME 类型的管理相关。 1. tcp_nodelay 功能&#xff1a; 控制是否启用 TCP_NODELAY…

【联邦学习】理论学习

文章目录 前言一、联邦学习要解决的问题二、什么是联邦学习2.1 发展历程2.2 分布式学习2.3 联邦学习和分布式学习的区别 3. 联邦学习工作原理4. 种类4.1 横向联邦学习4.2 纵向联邦学习4.3 迁移联邦学习 5. 技术挑战统计挑战&#xff1a;数据非独立同分布(non-lld)系统挑战&…

Shell 传递参数

Shell 传递参数 我们可以在执行 Shell 脚本时&#xff0c;向脚本传递参数&#xff0c;脚本内获取参数的格式为 $n&#xff0c;n 代表一个数字&#xff0c;1 为执行脚本的第一个参数&#xff0c;2 为执行脚本的第二个参数。 例如可以使用 $1、$2 等来引用传递给脚本的参数&…

【组件封装】uniapp vue3 封装一个完整的Tabs(标签页)组件教程,功能由简到杂实现讲解。

文章目录 前言一、简单版Tabs代码实现&#xff1a; 二、下划线带动画的TabsAPI回顾&#xff1a;代码实现&#xff1a; 三、内容区域滑动切换切换动画代码实现&#xff1a;&#xff08;2&#xff09;禁用手势滑动切换&#xff08;3&#xff09;内容区域换为插槽 四、标签栏可滚动…

35页PDF | 元数据与数据血缘落地实施(限免下载)

一、前言 这份报告详细介绍了元数据与数据血缘的概念、重要性以及在企业数据中台中的应用。报告阐述了数据中台的核心价值在于整合和管理体系内的数据&#xff0c;以提升数据资产化能力并支持业务决策。报告还涵盖了元数据的分类&#xff08;技术元数据和业务元数据&#xff0…

etcd资源超额

集群内apiserver一直重启&#xff0c;重启kubelet服务后查看日志发现一下报错&#xff1a; Error from server: etcdserver: mvcc: database space exceeded 报错原因&#xff1a; etcd服务未设置自动压缩参数&#xff08;auto-compact&#xff09; etcd 默认不会自动 compa…

【Linux】线程概念 | 线程控制

文章目录 &#x1f449;知识补充&#x1f448;&#x1f449;Linux线程概念&#x1f448;什么是线程Makefile线程 VS 进程线程的优点线程的缺点线程异常线程用途 &#x1f449;线程控制&#x1f448;线程终止pthread_exit 函数pthread_cancel 函数线程 ID 的深入理解在多线程的场…