8. 实战:Flask 项目从零搭环境
这是什么:Flask = Python 里最常用来写网站的小型 Web 框架;本章把 1~7 章串成一次完整的项目搭建。
为什么用:光会单个命令没用,项目要交付给同事、传到服务器才见真章。环境、数据、版本清单都得一次配齐,这套流程就是你以后每个 Python 项目的起手式。
如何用:本章跟着敲一遍:建目录、python -m venv、激活、pip install flask,最后跑通最小应用。
8.1 步骤总览
建目录 → venv 创建 → 激活 → pip 装 Flask → 最小应用跑通
→ freeze 出清单 → 补 .gitignore → Git 版控 → 交付
8.2 跟着敲(Windows 为主,其他平台括号)
① 建项目 + 环境
mkdir flask-mini && cd flask-mini
python -m venv .venv
.venv\Scripts\Activate.ps1 # (macOS/Linux: source .venv/bin/activate)
② 验证环境 + 装 Flask
pip -V # 确认路径在 .venv 里
pip install flask # 国内加 -i 清华源(第 3 章)
③ 最小应用(app.py,和 Flask 教程第 2 章同款):
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '青蛙的迷你站 🐸'
if __name__ == '__main__':
app.run(debug=True)
python app.py
浏览器打开 http://127.0.0.1:5000,看到「青蛙的迷你站」→ 全环境正牌打通。
④ 固化清单
pip freeze > requirements.txt
⑤ 版控(Git 教程第 3 章流程),.gitignore 先写好:
.venv/
__pycache__/
*.pyc
git init
git add .
git commit -F msg.txt # 约定:中文 message 走文件
此刻仓库里有:1 个 app.py + 1 份 errors-free 快照清单 + 0 字节虚拟环境——标准 Python 项目的完整骨架。
8.3 验收:同伴视角复现测试
把项目目录(不含 .venv)拷到别处,模拟「同事克隆」:
python -m venv .venv
# 激活
pip install -r requirements.txt # 第 4 章复现法
python app.py # 应同样跑通
复现成功 = 你的工程化交付合格。
8.4 与后续课程的衔接
| 目标 | 下一步 |
|---|---|
| 把 Flask 写成真正的网站 | Flask 教程(路由 / 模板 / 数据库) |
| 部署到云服务器 | Linux 教程第 7 章的 systemd 配置里 ExecStart 就指向 .venv/bin/python——生产环境同样靠虚拟环境跑 |
| 团队级依赖管理 | 第 7 章 的 poetry / uv |
8.5 动手改
- 为应用加一个
/about路由,重跑 pip install click后 freeze,记录 diff- 挑战:从零为 Pandas 项目走一遍同样流程(
pip install pandas)
8.6 小结
- 六步起手式:目录 → venv → 激活 → 装包 → 写码 → freeze + .gitignore
- 交付 = 代码 + 清单;环境交给「克隆方」按清单重建
- 生产部署、CI、协作——虚拟环境思想从本章贯穿到云端
虚拟环境 venv 完成!接着升级:Flask 教程 写出真正的网站 🐸