【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 支持在路由中传递动态参数,并支持类型限制,如 int、string、path 等。示例代码如下:

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/

相关推荐
aqiu1111114 小时前
【C++算法打怪专栏】8. 字符串转换整数 (atoi)
开发语言·c++·算法
爱吃香菜的初学者4 小时前
十四.Linux——消息队列
linux·运维·开发语言
迅猛龙办公室4 小时前
python实现倒序输出数字
开发语言·python
夏幻灵10 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
程序猿编码10 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
bkspiderx12 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
程序员老陆12 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光12 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
码云数智-园园13 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
禾小西13 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis