一、为什么需要虚拟环境?
场景:同时开发多个项目,各自依赖不同版本的库,如何解决冲突?
虚拟环境通过隔离依赖环境,避免项目之间的包版本冲突,是Python开发的必备工具。
二、venv:轻量级原生方案
1. 创建环境
bash
python -m venv myenv
2. 激活环境
-
Windows:
bash
myenv\Scripts\activate -
Linux/Mac:
bash
source myenv/bin/activate
3. 安装包与导出依赖
bash
pip install requests pandas
pip freeze > requirements.txt
三、Conda:跨平台的科学计算选择
1. 创建指定Python版本的环境
bash
conda create -n mycondaenv python=3.9
2. 安装包(自动解决依赖)
bash
conda install numpy scikit-learn
3. 导出环境配置
bash
conda env export > environment.yml
四、venv与conda核心对比
| 特性 | venv | conda |
|---|---|---|
| 包管理工具 | pip | conda(支持非Python包) |
| 环境隔离 | 完全隔离 | 完全隔离 |
| 跨平台支持 | 是 | 是 |
| 适用场景 | 纯Python项目 | 数据科学、多语言混合项目 |
五、实战:项目迁移环境
-
从旧项目导出依赖:
bash
pip freeze > requirements.txt -
在新环境中一键安装:
bash
pip install -r requirements.txt
六、常见问题
Q1:如何删除虚拟环境?
-
venv:直接删除文件夹或使用
rm -rf myenv -
conda:
conda remove -n mycondaenv --all
Q2:VSCode中如何切换环境?
Ctrl+Shift+P → "Python: Select Interpreter" → 选择虚拟环境下的Python路径。
结语
掌握虚拟环境是Python开发者的第一步,合理使用venv或conda能让你的开发流程更规范。你有其他使用技巧吗?欢迎在评论区分享!