【Python小知识】-Python Flask 框架入门教程

Python Flask 框架入门教程

一、Flask 简介

Flask 是一个轻量级的 Python Web 框架,以简洁灵活著称,适合快速开发各类 Web 应用。它提供了核心的路由、模板渲染等功能,同时支持通过扩展库丰富应用能力,如数据库集成、表单处理等。

二、项目初始化

1. 创建项目目录

打开终端,执行以下命令创建项目文件夹并进入:

bash 复制代码
mkdir flask_demo && cd flask_demo

2. 安装 Flask

使用 Python 包管理工具 pip 安装 Flask:

bash 复制代码
pip install flask

安装完成后,终端会提示安装成功信息。

3. 创建入口文件

在项目目录中新建 app.py 文件,作为 Flask 应用的主入口。

三、编写基础应用

1. 最小化应用代码

app.py 中写入以下代码,实现一个最基础的 Flask 应用:

python 复制代码
from flask import Flask
app = Flask(__name__)  # 初始化 Flask 实例

@app.route('/')  # 定义根路由
def index():
    return "Hello, Flask!"  # 返回响应内容

if __name__ == '__main__':
    app.run(debug=True)  # 启动开发服务器,开启调试模式

2. 运行应用

在终端执行:

bash 复制代码
python app.py

打开浏览器访问 http://127.0.0.1:5000,即可看到页面显示 Hello, Flask!

四、路由与动态参数

1. 基础路由配置

通过 @app.route('/路径') 装饰器,可以定义不同的 URL 路由。例如,添加关于页面路由:

python 复制代码
@app.route('/about')
def about():
    return "关于我们"

访问 http://127.0.0.1:5000/about 即可查看关于页面内容。

2. 动态参数传递

Flask 支持在路由中传递动态参数,并支持类型限制,如 intstringpath 等。示例代码如下:

python 复制代码
@app.route('/user/<string:username>')
def user_profile(username):
    return f"用户:{username}"

访问 http://127.0.0.1:5000/user/张三,页面将显示 用户:张三

五、模板渲染

1. 创建模板目录

在项目根目录下新建 templates 文件夹,用于存放 HTML 模板文件。

2. 编写 HTML 模板

templates 目录中新建 index.html 文件,编写简单的动态模板:

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Flask 模板示例</title>
</head>
<body>
    <h1>欢迎访问,{{ name }}!</h1>
</body>
</html>

3. 渲染模板

修改 app.py 中的根路由函数,使用 render_template 方法加载模板并传递参数:

python 复制代码
from flask import render_template

@app.route('/')
def index():
    return render_template('index.html', name="Flask 用户")

重新运行应用,访问根路由即可看到动态渲染的页面。

六、扩展功能

1. 静态文件管理

在项目根目录下新建 static 文件夹,用于存放 CSS、JavaScript、图片等静态资源。在 HTML 模板中,可通过 url_for 函数引用静态文件:

html 复制代码
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">

2. 数据库集成

Flask 本身不包含数据库功能,但可通过扩展库 Flask-SQLAlchemy 实现数据库操作。安装命令如下:

bash 复制代码
pip install flask-sqlalchemy

安装后可在应用中配置数据库连接,并定义数据模型进行增删改查操作。

七、总结

Flask 框架的基础使用方法,包括项目搭建、路由配置、模板渲染等核心功能。后续可根据需求深入学习表单处理、用户认证、API 开发等高级特性,构建更复杂的 Web 应用。

参考链接​:[Flask 官方文档](https://flask.palletsprojects.com/

相关推荐
KYGALYX5 分钟前
服务异步通信
开发语言·后端·微服务·ruby
zmzb010312 分钟前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder14 分钟前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎1 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE1 小时前
PHP纹路验证码
开发语言·php
仟濹2 小时前
【Java基础】多态 | 打卡day2
java·开发语言
孞㐑¥2 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
Re.不晚2 小时前
JAVA进阶之路——无奖问答挑战2
java·开发语言
八零后琐话2 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
3GPP仿真实验室2 小时前
【MATLAB源码】CORDIC-QR :基于Cordic硬件级矩阵QR分解
开发语言·matlab·矩阵