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 模型的接口~****

相关推荐
Pitayafruit6 分钟前
Spring AI 进阶之路04:集成 SearXNG 实现联网搜索
spring boot·后端·ai编程
风象南8 分钟前
SpringBoot 自研「轻量级 API 防火墙」:单机内嵌,支持在线配置
后端
Victor35625 分钟前
Redis(14)Redis的列表(List)类型有哪些常用命令?
后端
Victor35626 分钟前
Redis(15)Redis的集合(Set)类型有哪些常用命令?
后端
卷福同学27 分钟前
来上海三个月,我在马路边上遇到了阿里前同事...
java·后端
搏博7 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
bobz9659 小时前
小语言模型是真正的未来
后端
DevYK10 小时前
企业级 Agent 开发实战(一) LangGraph 快速入门
后端·llm·agent
一只叫煤球的猫10 小时前
🕰 一个案例带你彻底搞懂延迟双删
java·后端·面试
冒泡的肥皂11 小时前
MVCC初学demo(一
数据库·后端·mysql