1. 不要直接使用base虚拟环境为某个项目所用。
理由如下:
- 全局依赖:
base
环境中的包是全局的,所有项目都会共享这些包。如果不同项目需要不同版本的同一个包,可能会导致依赖冲突。 - 版本控制:在
base
环境中,更新一个包可能会影响其他项目的正常运行。或者删除一个包,也可能对其他项目造成影响。
我们可以为每一个项目创建一个与之对应的包。具体的步骤如下:
创建虚拟环境:
python -m venv myprojectenv
这将在当前目录下创建一个名为
myprojectenv
的虚拟环境。激活虚拟环境:
- Windows:
myprojectenv\Scripts\activate
- macOS/Linux:
source myprojectenv/bin/activate
安装依赖包:
pip install package_name
退出虚拟环境:
deactivate
2. 明确命名虚拟环境。
为虚拟环境命名时,最好使用与项目相关的名称,以便于识别和管理。
3. 使用requirements.txt文件。
- 记录依赖:将项目的依赖包记录在
requirements.txt
文件中,以便于在不同环境中重现相同的依赖环境。pip freeze > requirements.txt
- 安装依赖:在新环境中安装依赖包时,可以使用
requirements.txt
文件。pip install -r requirements.txt
4. 避免在虚拟环境中安装全局包
- 避免全局安装:在虚拟环境中安装包时,避免使用
--user
或--system
选项,以确保包只安装在虚拟环境中。pip install package_name
目前踩过的坑就是这些,谨记于此。