Python Flask 编程 | 连载 01 - Flask Quickstart

【python】网页开发——Flask基础(一)介绍、安装、版本、入门程序、网页相关知识、项目配置 Flask 是一个使用 Python 编写的轻量级 Web 开发框架。它被设计成简单、易用,并且具有灵活性,可以帮助开发者快速搭建 Web 应用程序。 阅读详情

一、Flask 介绍与安装

Flask 是一个使用 Python 实现的 Web 开发微框架,具有丰富的扩展,可以非常方便的继承 Jinja2、SQLAlchemy、WTF 等扩展。

image.png

哪些公司使用了 Flask 构建 Web 应用?

image.png

Flask 安装

pip 安装

在终端下指定使用 Py 3.8 来安装 1.1.2 版本的 Flask。

bash
复制代码
pip3.8 install flask==1.1.2

使用该命令安装时也可以选择性使用以下属性:

  • –timeout:设置超时时间
  • -i:使用指定的镜像源安装
bash
复制代码
# 使用清华镜像源安装1.1.2版本的Flask
pip3.8 install flask==1.1.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

源码安装

使用源码进行安装,进入源码目录下,运行命令

bash
复制代码
python3 setup.py install

安装完成之后可以通过在终端中运行命令 pip3.8 list

image.png

或者通过在 Python 代码中导入 Flask 来查看 Flask 版本信息。

image.png

二、Flask Quickstart

使用PyCharm创建一个Pure Python项目 flask-quickstart,新增一个 Python 脚本 app.py

python
复制代码
from flask import Flask

# 创建一个Flask对象/实例
app = Flask(__name__)


@app.route('/hallo')
def hallo():
    return 'Hallo Flask'

if __name__ == '__main__':
    app.run()
  • name:表示Flask应用的主模块或者包的名称,Flask使用该参数来确定应用的位置,以此找到应用中其他文件的位置,如模板、静态资源文件等
  • @app.route():装饰器,表示路由配置,用户在浏览器中输入的URI映射到指定的函数

运行该脚本,控制台打印出URL地址

image.png

在浏览器中输入控制台打印出的地址

image.png

控制台打印出 hallo() 函数返回的字符串,此时 /hallo 就和 hallo() 函数关联起来了

app.py 中的 hallo() 函数称为视图函数,每个视图函数上可以加多个装饰器,既可以有多个 URI 映射到同一个视图函数上.

在 hallo() 函数上添加一个 URI

python
复制代码
# 其余代码不变

@app.route('/')
@app.route('/hallo')
def hallo():
    return 'Hallo Flask'
    
# 其余代码不变

重新启动脚本,浏览器输入 127.0.0.1:5000

image.png

“/” 同样也可以映射到hallo()视图函数上

MTV 模型

在app.py同级目录下新建一个 templates 文件夹,增加 hallo.html 页面

html
复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8"/>
    <title>Index</title>
</head>
<body>
<h1>{{info.message}}</h1>
</body>
</html>

修改app.py

python
复制代码
from flask import render_template

# 其余代码不变

@app.route('/hallo')
@app.route('/')
def hallo():
    info = {
        'message': "这是存在message变量中的信息"
    }
    return render_template('index.html', info=info)

image.png

Flask 的 MTV 模型

image.png

  • V 表示视图 View:负责业务逻辑,对应项目中的视图函数
  • T 表示模板 Template:负责如何把页面展示给用户
  • M 表示模型 Model:与数据库表对应的类

浏览器器发送的请求首先会根据URI地址找到对应的视图函数,视图函数中会处理请求包括获取对进行进行判断,获取请求中的参数,之后会与Model层进行交互,通过ORM框架对数据进行增删改查,并将操作结果保存,Template中会通过模板语法处理视图函数中的数据,之后再有视图函数将Template返回给浏览器进行渲染,最终呈现给用户

视图函数是请求处理的核心,所以视图层是一定存在的,可以没有 Template 或者 Model。

实现 MTV 三层架构的第三方库:

  • 模型Model

    • Flask-PyMongo/Flask-SQLAlchemy
  • 视图View

    • Flask-WTF/Flask-Uploads/
  • 模板Template

    • Jinja2

三、Flask 内置服务器

Flask 推荐的启动方式

flask 1.0 之后就不再推荐使用 main 函数的方式启动 flask 应用了,而是通过设置环境变量运行启动命令的方式来启动Flask应用

bash
复制代码
# 设置环境变量
set/export FLASK_APP = app.py
# 启动应用
flask run -h 0.0.0.0 -p 8080
# 这条命令也可以设置host和port
flask run --host=0.0.0.0 --port=8080
# 查看更多命令
flask run --help

IDEA 配置 Flask 应用启动方式

image.png

Flask 应用开启 Debug 模式

Flask应用开启 Debug 模式非常简单,只要通过命令将 FLASK_ENV 设置为 development 即可。

bash
复制代码
set/export FLASK_ENV=development
flask run

image.png

开启调试模式之后,修改代码保存后服务器会自动重启

四、Flask 的扩展

image.png

由于 Flask 是一个 microframework,除了核心功能外其他模块都需要使用第三方扩展,如 ORM 框架、表单等,这些都可以通过官方网站查找到所需要的第三方扩展。

这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

优快云大礼包:全网最全《全套Python学习资料》免费分享🎁

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉优快云大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

​

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉优快云大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

​

Python光速入门 - Flask轻量级框架 FlASK是一个轻量级的WSGI Web应用程序框架,Flask的核心包括Werkzeug工具箱和Jinja2模板引擎,它没有默认使用的数据库或窗体验证工具,这意味着用户可以根据自己的需求选择不同的数据库和验证工具。Flask的设计理念是保持核心简单,同时提供强大的扩展性,用户可以通过添加各种扩展来增加功能,如邮件发送、用户认证、数据库集成等pip升级命令:python -m pip install --upgrade pipFlask要求Python的版本在3.4以上。 阅读详情

相关推荐

Flask01:环境基础

前言 Flask是一个使用 P**ython 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。Flask也被称为 “microframework” (微框架),因为它使用简单的核心,用 extension 增加其他功能。Flask没有默认使用的数据库、窗体验证工具。 Flask 不会替你做出许多决定,比如选用何种数据库。 类似的决定,如使用何种模板引擎,是非常容易改变的。 Flask可以变成你任何想要的东西,一切恰

秋殇阁 876

Python:Flask版本对Python版本支持情况汇总

经常使用Flask,同时也因为版本升级而造成了一些问题,现在通过Flask的升级日志,整理出以上的表格,通过以上的表格可以看到Flask对Python版本的支持情况。在选择Flask版本时,不能仅仅使用最新版本,而是要考虑老旧代码的兼容性,选择最佳版本。截止日期:2023年7月8日。

彭世瑜的博客 1万+

【python】flask各种版本的项目,终端命令运行方式的实现

flask在0.11版本之前都是采用flask-script第三方模块来实现终端脚本命令的执行,flask在0.11版本以后不再使用这个模块了,因为存在兼容性问题,所以内置了Click模块来实现终端脚本命令的执行。 flask0.11.0版本以后,flask内置了一个Click模块,这个模块是终端命令模块,可以让我们直接通过Click的装饰器,编写和运行一些终端命令。 在flask2.0版本已经不能兼容flask-script模块了,所以需要改成使用Click模块来运行和自定义管理终端命令了。

景天科技苑 1万+

Flask新手入门(一)

介绍python的web框架flask的基本功能,其中包括:路由、模版、表单提交、数据库操作等基本功能。

老王的博客 2596

快速安装Python Flask框架3.0.2版本指南

Flask是一个轻量级的Web应用框架,它的3.0.2版本带来了新的特性与改进。本章将对这些变化进行概述,特别是对有经验的IT从业者来说,了解这些更新将有助于提高开发效率和应用性能。Wheel文件是一种Python的分发格式,它通过预编译的扩展来减少安装时间和复杂性。在Python包的安装过程中,经常会遇到需要编译C扩展的场景,这不仅会增加安装时间,还会因编译依赖项而提升失败的风险。Wheel文件通过提前编译这些扩展,使得安装过程仅限于将预编译的组件复制到系统中,从而大幅提高了效率。

weixin_28736145的博客 1224

基于大模型的肾结石诊疗全流程风险预测与方案制定研究报告

目录一、引言1.1 研究背景与意义1.2 国内外研究现状1.3 研究目标与内容二、大模型技术原理与应用概述2.1 大模型的基本原理2.2 大模型在医疗领域的应用进展2.3 适用于肾结石预测的大模型选择与依据三、术前风险预测与准备3.1 患者身体状况评估3.2 结石情况分析3.3 术前准备方案制定四、术中风险预测与应对4.1 出血风险预测与处理4.2 脏器损伤风险预测与预防4.3 实时监测与决策支持五、术后恢复预测与护理5.1 恢复时间预测5.2 护理要点与措施5.3 并发症预防与处理六、并发症风险预测与管理

嵌入式毕设/课设资料清单(速查手册·文档模板·题库,持续更新)→ 见最新文章 1147

Flask

Flask

weixin_53909748的博客 577

在MacBook上直接跑Windows Server 2022:一个开发者的真实踩坑与配置全记录

本文详细记录了在MacBook上原生运行Windows Server 2022的完整流程与优化技巧。通过Boot Camp实现非虚拟机安装,开发者可以充分利用Mac硬件性能,搭建高效的本地开发环境,特别适合需要测试跨平台应用和服务器功能的场景。文章涵盖驱动处理、分区策略、Docker配置等关键步骤,为技术极客提供实用指南。

weixin_42620913的博客 245

Python Flask框架学习笔记1

Python Flask框架学习笔记

CCH2024的专栏 772

手把手教你用DCA1000EVM解析IWR6843毫米波雷达数据(附MATLAB代码)

本文提供了一份详尽的实战指南,手把手教你使用DCA1000EVM采集并解析TI毫米波雷达IWR6843的原始数据。内容涵盖硬件连接配置、mmWave Studio参数设置、LVDS数据流结构解析,并附有核心MATLAB代码,详细演示了从原始二进制文件到距离-速度谱的信号处理全链路,帮助开发者快速掌握数据解析与处理的关键步骤。

terraform7cloud的博客 227

阿里云Ubuntu部署Steam饥荒联机版服务器:从零到多人联机的完整指南

本文详细介绍了在阿里云Ubuntu系统上部署Steam饥荒联机版服务器的完整流程,包括环境准备、SteamCMD安装、服务端配置、Mod管理及后台运行技巧。通过2核4GB的ECS实例配置和端口设置,实现5人流畅联机体验,适合游戏爱好者快速搭建专属服务器。

weixin_29229261的博客 1023

Flask 入门教程

百度百科:Flask是一个使用 Python 编写的轻量级 Web 应用框架1,也被称为 “微服务框架” ,因为使用简单的核心( Werkzeug WSGI工具包2、 Jinja2 模板引擎3)且支持插件扩展。werkzeug是Flask使用的底层WSGI库, 实现路由、调试和Web服务器网关接口。(WSGI,全称 Web Server Gateway interface,是为 Python 语言定义的Web服务器和Web应用程序之间的一种简单而通用的接口)。

qq_36309304的博客 4879

Python实现安居客新房数据抓取简易版

本文介绍使用Python爬取安居客新房楼盘数据的方法,重点针对三四线城市。通过分析移动端H5页面结构,采用滚动加载方式获取推荐楼盘列表(class="recomm-list"),从中提取楼盘ID并拼接详情页链接。代码展示了如何解析HTML标签获取楼盘名称、状态、价格、户型等基本信息,并处理图片URL。爬取过程涉及一个一级页面和两个二级页面,同时提到可能遇到的验证码问题将在后续处理。核心代码使用BeautifulSoup解析HTML,requests发送请求,并将数据存入MySQL数据库。

qq_37604998的博客 473

Python 查询版本 Flask安装

python3.11 设置源 安装flask

weixin_42422720的博客 2334

深度学习 load_data_fashion_mnist

pytorch 中报错:PermissionError: [WinError 5] 拒绝访问。: '…/data’ 在学习李沐大神动手学习深度学习卷积神经网络章节中,调用d2l包中load_data_fashion_mnist报错,这可能是***权限***的问题。 batch_size = 256 train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size,batch_size) 我的解决方法是 重新定义一下 load_data_fashi

纸上得来终觉浅,绝知此事要躬行 9147

基于YOLOv5s的RK3588多线程部署16FPS暴涨到120FPS 轻量化深度学习部署实战教程(包括性能优化与加速)37

本文介绍了如何在RK3588平台上利用线程池优化YOLOv5模型的推理性能。RK3588内置3个NPU核心,支持多核并行处理。作者设计了一个线程池架构:1个线程负责数据读取,10个线程处理NPU运算,1个线程输出结果。该架构包含任务队列、线程管理和工作线程三个核心组件,通过合理设置线程数、任务队列大小等参数确保性能稳定。文章提供了详细的C++实现代码,包括线程池初始化、任务提交、结果获取等功能模块,并讨论了多线程同步和内存管理的关键技术要点。该方案可显著提升深度学习模型在嵌入式设备上的部署效率。

FJN110的博客 9225

Flask框架学习之环境配置

Flask框架作为轻量级Web应用框架,最大的特征是轻便灵活,第三方库的选择面广,容易上手,试错成本低。为了帮助大家学习并掌握Flask框架,本文将会带着大家一步步的完成Flask安装的环境配置工作,让我们马上开始吧~1、Python版本的选择Python发展到现在已经更新到Python 3.X版本,建议大家在学习Flask的过程中使用官方发布的最新版本。

xiangxueerfei的博客 2407

AI测试:手把手教你用AI做桌面自动化「喂饭教程」

本文介绍了基于MCP协议的DesktopCommanderMCP自动化工具,通过自然语言指令实现桌面操作。系统采用客户端-服务器架构,支持应用程序管理、文件操作、屏幕控制等功能。详细说明了环境搭建步骤,包括Python和Node.js依赖安装、API密钥配置及MCP服务部署。通过实战案例展示了文件整理、批量截图等典型应用场景,并分享了任务描述优化、权限控制等最佳实践。该方案能显著提升重复性桌面操作的效率,让AI成为智能办公助手。

blues_C的博客 851

Flask使用

flask简单使用,restful api创建,读取json文件返回json数据,ASCII码禁用

qq_40289611的博客 565

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Flask for Python 全版本离线安装包 (1.0 + 2.0 + 3.0及依赖包)

Flask 是一个轻量级的 WSGI Web 应用框架。它旨在使入门快速且简单,同时具有扩展到复杂应用的能力。Flask 最初是一个围绕 Werkzeug 和 Jinja 的简单封装,现在已成为最流行的 Python Web 应用框架之一。以下为离线安装包,包含目前各主版本及其依赖:1.1.2,2.0.0,3.0.0,Python 建议安装 3.8 及以上版本。

Eric Woo 4238

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

python2和3版本安装及flask需依赖相同版本的Werkzeug

而且有项目还得依赖它,肯定不能卸掉,那就需要两个版本都需要保留。若啥也没显示,则需要检查一下系统环境:此电脑→属性→高级系统设置→高级→环境变量→系统变量(S)→选中Path,点击编辑→检查一下有没有Python 3安装的路径的,没有就点击新建。步骤:此电脑→属性→高级系统设置→高级→环境变量→系统变量(S)→选中Path,点击编辑→新建两条环境变量。查看python3安装情况,显示python 3.12.1 的版本信息,则安装成功。a. Python 2 版本只需要选择安装路径,其它默认即可。

weixin_47529732的博客 4010

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Flask发展史

Flask的发展史是一段充满创新与成长的故事,它从一个简单的工具库补充逐渐发展成为Python Web开发领域的一颗璀璨明星。

Flask Web 1313

从0开始搭建python后台服务-Flask版(四)

本文实现了python flash后台+vue 前端的用户登录操作,并提供了2种简单验证方案。

KING_C_JL的专栏 1101

Python轻量级框架Flask开发web应用(附源码自取)

Python Flask 框架是一款轻量级的 Web 开发框架,由 Armin Ronacher 创建,遵循 MVC(Model-View-Controller)模式的设计理念,虽然它本身并未严格强制此模式,但提供了足够灵活的基础结构来构建 web 应用程序。Flask 基于 Werkzeug WSGI 工具包和 Jinja2 模板引擎,以其小巧精悍、易于扩展的特点深受开发者喜爱,特别适合小型至中型规模的 Web 项目,同时也能够通过扩展支持大型项目需求。

我的身体只需要很少的粮食就能养活;而我的灵魂却非常地贪婪,需要日月星辰、山川湖泊和大自然的滋养。 3481

1. 2 Flask介绍与第一个程序

一 、 Flask简单示例 1. 程序示例:Hello World 2. 示例内容说明 1) Flask类: 继承_PackageBoundObject类, 该类_init__中参数说明可以进入该类py文件查看 __name__特殊变量,此时可以通过所处模块赋予__name__变量相应的值,对上述代码示例的话,name= day01 3. 路由注册: 1) 过程了解 先了解: WEB应用程序里,客户端和服务器上的Flask程序的交互可以概括为: 用户在浏览器输入:URL访问某个资

Following my own heart 2467

Python Flask配置

基于PythonFlask安装和配置教程

huitailangZz的博客 1023
上一篇: 这可能是最最最全面的Python入门手册了!
下一篇: Python Flask 编程 | 连载 02 - Flask 路由
Llama-Turbo
博客等级 码龄4年 9901粉丝 2021原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值