3. 开发环境搭建:配置Python虚拟环境,安装Flask、SQLAlchemy、Redis等依赖库
好,咱们正式开始动手了。
做市商库存监控看板,说白了就是一个Web应用。既然是Python项目,第一步就是把开发环境搭好。这一步要是偷懒,后面各种版本冲突、依赖报错能让你怀疑人生。我当年刚入行时,就吃过这个亏——项目做到一半,发现某个库升级了,接口全变了,那叫一个酸爽。
3.1 为什么非得用虚拟环境?
你想想看,你的电脑上可能同时有好几个Python项目。有的用Flask 2.0,有的用Flask 1.1。如果不隔离,它们就会打架。
虚拟环境就是给每个项目一个独立的“小房间”。里面装的Python版本、第三方库,互不干扰。我个人习惯,每个新项目第一件事就是创建虚拟环境,已经成了肌肉记忆。
核心原则: 一个项目,一个虚拟环境,互不污染。
3.2 创建Python虚拟环境
Python 3.3以上版本自带venv模块,不需要额外安装。操作很简单:
# 打开终端,进入你的项目目录
cd market_maker_dashboard
# 创建虚拟环境,名字叫 venv(也可以叫别的)
python -m venv venv
执行完,你会看到项目目录下多了一个venv文件夹。里面就是独立的Python解释器和库目录。
然后激活它:
# Windows 系统
venv\Scripts\activate
# macOS / Linux 系统
source venv/bin/activate
激活成功后,终端前面会出现(venv)字样。嗯,看到这个就对了。
小技巧: 如果你用VS Code,可以直接在终端里激活。或者用VS Code的“Python: Select Interpreter”功能,选到venv里的Python路径。
3.3 安装核心依赖库
虚拟环境激活后,就可以安装我们需要的库了。这个看板项目,主要依赖三个:
| 库名 | 版本建议 | 作用 |
|---|---|---|
| Flask | 2.3.x | Web框架,处理HTTP请求和路由 |
| Flask-SQLAlchemy | 3.0.x | 数据库ORM,操作MySQL/PostgreSQL |
| redis | 5.0.x | Redis客户端,用于缓存和实时数据 |
安装命令:
pip install flask==2.3.3
pip install flask-sqlalchemy==3.0.5
pip install redis==5.0.0
或者一次性安装:
pip install flask==2.3.3 flask-sqlalchemy==3.0.5 redis==5.0.0
注意: 我建议你指定版本号。为什么?因为不指定版本,pip会装最新版。万一最新版有breaking change,你的代码可能就跑不起来了。我曾经在项目上线前一天,因为Flask-SQLAlchemy自动升级,导致查询接口全部报错……从那以后,我再也不敢不锁版本了。
3.4 验证安装是否成功
装完了,怎么知道装没装对?写个简单的测试脚本:
# 在终端里输入 python,进入交互模式
python
>>> import flask
>>> print(flask.__version__)
2.3.3
>>> import flask_sqlalchemy
>>> print(flask_sqlalchemy.__version__)
3.0.5
>>> import redis
>>> print(redis.__version__)
5.0.0
如果都能正常打印版本号,说明安装成功。如果报ModuleNotFoundError,那就是没装上,检查一下虚拟环境是否激活了。
3.5 生成依赖清单
项目开发完,或者要部署到服务器,你需要知道项目依赖了哪些库。用这个命令:
pip freeze > requirements.txt
这会生成一个requirements.txt文件,内容类似:
Flask==2.3.3
Flask-SQLAlchemy==3.0.5
redis==5.0.0
# 可能还有其他依赖,比如 Werkzeug、Jinja2 等
以后别人拿到你的项目,只需要:
pip install -r requirements.txt
就能一键安装所有依赖。这是Python项目的标准做法。
避坑指南: 我曾经见过有人把整个venv文件夹传到Git仓库里,那简直是灾难。正确的做法是:把venv加到.gitignore里,只提交requirements.txt。
3.6 本章知识体系总览
下面这张图,帮你把环境搭建的整个流程串起来:
3.7 小结
环境搭建这块,说难不难,说简单也不简单。核心就三点:
- 虚拟环境必须用——别偷懒,否则后面有你哭的
- 版本号要锁死——
requirements.txt是项目的“身份证” - 验证不能省——装完跑一下
import,确认能用再往下走
好,环境搭好了,下一章咱们就开始写代码了。到时候你会看到,Flask + SQLAlchemy + Redis 这三个家伙配合起来,能做出多酷的东西。