场景 | 问题表现 | 虚拟环境解决方案 |
---|---|---|
多项目依赖冲突 | 项目A需要Django 3.2,项目B需要Django 4.1 | 隔离不同项目的依赖版本 |
全局包污染 | 系统Python被意外修改 | 创建独立Python解释器 |
团队协作标准化 | 不同成员环境不一致 | 统一requirements.txt |
生产环境部署 | 本地与服务器环境差异 | 精准复现运行环境 |
工具 | 特点 | 适用场景 |
---|---|---|
venv | Python 3.3+ 内置 | 标准Python项目 |
virtualenv | 兼容Python 2/3 | 旧版本兼容项目 |
conda | 跨语言环境管理 | 数据科学/多语言项目 |
pipenv | 集成包管理 | 简单项目依赖管理 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# 创建环境, 当前目录路径创建 python -m venv myenv
# 激活环境 # Windows myenv\Scripts\activate # macOS/Linux source myenv/bin/activate
# 安装包 pip install django==3.2
# 退出环境 deactivate |
1 2 3 4 5 6 7 8 |
# 导出依赖 pip freeze > requirements.txt
# 复现环境 pip install -r requirements.txt
# 删除环境 rm -rf myenv # 直接删除文件夹 |
打开设置界面??
??定位解释器设置??
导航至:Project: <项目名> > Python Interpreter
添加新解释器
??配置虚拟环境??
1 2 3 4 |
Location: 项目根目录/.venv # 推荐路径 Base interpreter: Python 3.9 Inherit global packages: 不勾选(避免污染) Make available to all projects: 不勾选(项目独占) |
??完成创建??
等待进度条完成,新环境即生效
功能 | 操作路径 | 应用场景 |
---|---|---|
切换环境 | Run/Debug Configurations > Python interpreter | 多环境调试 |
导出requirements | Python Packages工具窗口 > 导出图标 | 生成依赖清单 |
批量安装依赖 | 双击requirements.txt > Install All | 快速复现环境 |
环境复用 | 其他项目中选择已有解释器 | 共享标准环境 |
1 2 |
# Windows报错处理 Set-ExecutionPolicy RemoteSigned -Scope CurrentUser |
1 2 3 4 5 |
# 查看依赖树 pipdeptree
# 强制解决冲突 pip install --force-reinstall package==version |
1 |
.venv(项目内隐藏目录)或 venv_项目名 |
1 2 3 |
# 在.gitignore中添加 .venv/ venv*/ |
1 2 3 |
# 定期更新 pip list --outdated pip install -U package |
1 2 3 4 |
## 环境配置说明 - Python版本: 3.9.12 - 激活命令: source .venv/bin/activate - 依赖安装: pip install -r requirements.txt |