今天在服务器上使用 pip 安装依赖包时,发生了一个报错如下,说是为了避免冲突所以建议使用虚拟环境来安装依赖,于是花了一些时间来整理了 python 虚拟环境使用相关的方案,谨以此文记录,以备后需。
虚拟环境是 python 开发中的一个重要概念,它允许你在项目之间隔离不同的 python 包,以避免可能的冲突,并且使得依赖项的管理更加简单和灵活。
方案一:使用自带的 venv
更古老的方案:pyvenv 是用于 python3.3 和 3.4 版本创建虚拟环境的工具,在 python3.6 版本中被弃用
venv 支持 python 3.3 +,如果是 python2 或者 python3 低版本可以跳过直接看方案二
创建虚拟环境
python
python3 -m venv test-env
运行次命令后将会递归创建目标目录,并在该目录下新增一个 pyvenv.cfg 配置文件,文件内容大致如下
bash
home = /usr/bin # 指向运行此命令的 python 安装目录
include-system-site-packages = false
version = 3.10.13
激活虚拟环境
Linux/macOS 中
bash
source test-env/bin/activate
Windows 系统中
bash
.\test-env\Scripts\activate.bat
激活虚拟环境后,会在命令提示符之前看到虚拟环境的名称(如: test-env)
安装依赖项
bash
pip install package1 package2 ...
退出虚拟环境
bash
deactivate
使用 zsh 时如何默认就激活指定的虚拟环境
编辑 ~/.zshrc 配置文件,加入 source 虚拟环境命令即可
方案二:virtualenv
virtualenv 是一个用于创建 python 虚拟环境的工具,兼容 python2.x 和 python3.x,下面是具体的使用方法
安装 virtualenv 包
bash
pip install virtualenv
创建虚拟环境
bash
virtualenv venv
激活虚拟环境
Linux/macOS 中
bash
cd venv
source ./bin/activate
Windows 中
bash
> cd venv
> .\Scripts\activate.bat
退出环境
bash
deactivate
删除环境
直接删除对应的虚拟环境目录即可