1.1 问题
在同一台电脑上需要用到同一个包的不同版本(tensorflow-gpu==1.5/tensorflow-gpu==1.12和tensorflow==2.5.0),如果直接使用
sudo pip install tensorflow-gpu==1.5
sudo pip install tensorflow-gpu==1.12
sudo pip install tensorflow==2.5.0
指令依次安装,则会把整个依赖关系搞乱;同时在同一个目录下安装或者更新,新版本会覆盖以前的版本。🌰中tensorflow依赖的各种包版本也会更新至2.5.0的适配版本,需要依赖之前版本的项目工程也就无法正常运行了,更有甚者会导致NVIDIA显卡崩掉,因为driver/CUDA/cudnn等与tensorflow/pytorch/caffe等版本不配套。汉王问曰:为之奈何?
1.2 方案
答曰:其一,可置【虚拟环境】。虚拟环境可以搭建独立的python运行环境,在不同的虚拟环境里可时配置不同包的不同版本,从而使得单个项目的运行环境与其它项目互不影响。
一款让你方便而且逼格很高的python工具,它能够帮我们创建一个独立(隔离)的Python环境。下面记录一下如何使用virtualenv来使用虚拟环境。个人还是习惯使用Anaconda。
2.1 安装
系统:Ubuntu18.04
安装:google或度娘
就终端指令两句话:
sudo pip install virtualenv
sudo pip install virtualenvwrapper
#或者
sudo apt-get install virtualenv
sudo apt-get install virtualenvwrapper
#备注:安装虚拟环境后,如果提示找不到mkvirtualenv命令,须配置环境变量。
2.2 常用命令
virtualenv常用指令 virtualenv –version查看virtualenv是否安装成功及检查版本lsvirtualenv查看系统所有存在的虚拟环境workon xxxvirtualenvwrapper选择虚拟环境cdvirtualenvvirtualenvwrapper进入虚拟环境目录mkvirtualenv xxxvirtualenvwrapper创建虚拟环境TAB键补全virtualenvwrapper提供rmvirtualenv xxxvirtualenvwrapper删除虚拟环境
创建虚拟环境:
方式一
virtualenv env_name
表示创建一个名为env_name的虚拟环境。
每个虚拟环境都包含一个独立的env_name/bin/python和env_name/bin/pip。
当运行时env_name作为运行环境。
方式二
virtualenv -p python2.7 env2.7 #为python2.7
virtualenv -p python3.6 env3.6 #为python3.6
virtualenv -p /usr/bin/python3.6 env3.6
创建指定python版本的虚拟环境
#成功安装了virtualenvwrapper以后
mkvirtualenv env_name
激活虚拟环境:
#linux
source env_name/bin/activate
#windows
env_name\Scripts\activate
退出激活环境:
退出当前虚拟环境
windows
env_name\Scripts\deactivate.bat
#linux
deactivate
删除激活环境:
linux
rm –r env_name
#windows
#直接删除创建时生成的env_name的目录就好
例如:
1、 virtualenv挺好;
2、搞数据计算的还是偏向于Anaconda;
3、 Anaconda兼顾virtualenv和pip,但后两者更专注极致。
Original: https://blog.csdn.net/yueyueniaolzp/article/details/122108390
Author: yueyueniaolzp
Title: 备忘小记006–详解virtualenv中使用python的虚拟环境
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/521900/
转载文章受原作者版权保护。转载请注明原作者出处!