Flask 入门到实战:手把手带你构建第一个 Python Web 应用

Flask 入门到实战:手把手带你构建第一个 Python Web 应用


一、前言:为什么选择 Flask?

在 Python Web 开发领域,常见的框架包括 Flask、Django、FastAPI 等。 如果你是初学者,Flask 是最适合你的入门框架之一。它轻量、灵活、文档完善,上手门槛低,并且足够强大,支持构建中型以上的生产级应用。

本篇博客将带你从零开始,逐步理解 Flask 的开发逻辑,并构建一个简单可运行的 Web 应用。


二、开发环境准备

1. 安装 Python

确保你已经安装了 Python 3.7+。可以通过以下命令确认:

bash 复制代码
python3 --version

2. 创建虚拟环境(推荐)

bash 复制代码
python3 -m venv venv
source venv/bin/activate  # macOS / Linux
venv\Scripts\activate     # Windows

3. 安装 Flask

bash 复制代码
pip install flask

三、Flask 快速上手:Hello, World!

创建一个名为 app.py 的文件,输入以下代码:

bash 复制代码
from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Hello, Flask!'

if __name__ == '__main__':
    app.run(debug=True)

在PyCharm中,当你创建了flask项目就会自动生成上述文件。

然后运行:

bash 复制代码
python app.py

打开浏览器,访问 http://127.0.0.1:5000,就能看到页面上显示:

复制代码
Hello World!

你已经成功搭建了一个最基本的 Flask 应用。


四、核心概念详解

1. Flask 应用对象

python 复制代码
app = Flask(__name__)

这是 Flask 应用的核心,创建了一个应用实例。

2. 路由与视图函数

py 复制代码
@app.route('/')
def hello():
    return 'Hello, Flask!'

路由负责将 URL 映射到对应的函数(即"视图")。例如访问 / 就会触发 hello() 函数。

3. debug=True 的作用(重要)

让 Flask 在开发过程中自动重载代码并提供调试信息。我们开启这个模式就可以避免重复启动与关闭。


五、添加 HTML 模板

Flask 支持 Jinja2 模板引擎。我们来构建一个带 HTML 页面响应的例子。

1. 创建目录结构:

md 复制代码
project/
├── app.py
└── templates/
    └── index.html

2. 修改 app.py

py 复制代码
from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html')

3. 创建 templates/index.html

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>Flask Demo</title>
</head>
<body>
    <h1>欢迎来到 Flask 世界!</h1>
</body>
</html>

重新运行 Flask 应用后访问首页,你将看到一个简单的 HTML 页面。


六、表单处理与请求参数

我们扩展一个表单输入功能:

app.py 新增路由:

py 复制代码
from flask import request

@app.route('/greet', methods=['GET', 'POST'])
def greet():
    if request.method == 'POST':
        name = request.form['name']
        return f'你好,{name}!'
    return '''
        <form method="post">
            你的名字:<input type="text" name="name">
            <input type="submit">
        </form>
    '''

这是 Web 开发的关键步骤:接收用户输入并生成动态响应


七、如何继续学习?

Flask 虽然轻量,但功能不简单。下节将继续深入学习以下内容:

使用 SQLAlchemy 打造可持久化的数据层


八、总结

通过本篇文章,我们完成了以下内容:

  • 理解了 Flask 的核心概念
  • 编写了第一个 Web 应用
  • 使用了模板渲染 HTML
  • 实现了表单输入和数据响应

Flask 是学习 Web 开发的一把钥匙,未来你可以用它构建博客、后台管理系统、API 服务,甚至是部署 AI 模型的接口~****

相关推荐
kyriewen6 分钟前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek
捡田螺的小男孩21 分钟前
什么是 Skill?手把手带你写一个简单有用的 Skill!
前端·后端·程序员
IT_陈寒26 分钟前
Redis集群这个坑,差点让我通宵
前端·人工智能·后端
用户8356290780511 小时前
Python 自动化 Word 文本框处理:创建、定位、填充内容与管理
后端·python
网渡科技1 小时前
向量数据库选型指南:RAG场景下的性能对比与调优策略
后端
riverNijika1 小时前
项目学习笔记:C++基础同步输出日志库
后端
Lyra_Infra1 小时前
OpenClaw 升级及 Channel 安装故障排查与遗留问题分析
后端·npm
江小渔2 小时前
训练工程与训练平台入门 31 安装 Kubeflow Trainer,并跑第一个 TrainJob
后端
用户938515635072 小时前
从 0 拆解一个 Next.js 笔记系统:npx、App Router、RSC 与组件规划全记录
前端·后端·全栈
princed2 小时前
在 Claude Code / Codex / Pi 里用 DeepSeek,怎么让它看见图?
ai编程·deepseek