Python的虚拟环境是一个独立的Python运行时环境,允许你在同一个系统中为不同的项目创建隔离的依赖和包安装,而不会相互干扰。简单来说,它就像一个“沙盒”,让你可以在不影响全局Python环境的情况下管理项目特定的库和版本。
好处
- 隔离性:不同项目可以使用不同版本的包,避免版本冲突。比如,项目A用Django 2.0,项目B用Django 3.0,虚拟环境让它们互不干扰。
- 可移植性:你可以轻松复制或分享虚拟环境配置(比如通过
requirements.txt
),让别人重现你的开发环境。 - 清洁性:避免全局安装过多包导致混乱,保持系统Python环境的纯净。
- 测试方便:可以在虚拟环境中测试代码对不同包版本的兼容性。
怎么用
Python自带了一个模块venv
来创建和管理虚拟环境。下面是基本步骤:
1. 创建虚拟环境
在终端或命令行中,进入你的项目目录,然后运行:
python -m venv 虚拟环境名称
比如:
python -m venv myenv
这会在当前目录下创建一个名为myenv
的文件夹,里面包含一个独立的Python环境。
2. 激活虚拟环境
激活方式因操作系统而异:
- Windows:
myenv\Scripts\activate
- MacOS/Linux:
激活后,你的终端提示符前会显示source myenv/bin/activate
(myenv)
,表示你已进入虚拟环境。
3. 安装依赖
在虚拟环境中使用pip
安装项目所需的包,比如:
pip install requests
这些包只会被安装到当前虚拟环境中,不会影响全局环境。
4. 查看已安装的包
可以用以下命令查看当前虚拟环境中的包:
pip list
5. 退出虚拟环境
用以下命令退出:
deactivate
6. 删除虚拟环境
如果不再需要某个虚拟环境,直接删除对应的文件夹即可,比如:
rm -rf myenv # Linux/MacOS
rd /s /q myenv # Windows
额外技巧
- requirements.txt:可以用
pip freeze > requirements.txt
导出当前环境的依赖列表,其他人可以用pip install -r requirements.txt
快速安装相同依赖。 - 虚拟环境管理工具:除了
venv
,还可以试试virtualenv
或poetry
,功能更强大。
总结来说,虚拟环境是Python开发中的最佳实践,尤其在多人协作或多项目开发时非常有用。