1.虚拟环境
1.问题: 即什么是虚拟环境
1.Linux系统默认已经安装了两个python版本,分别为python2.7.12与python3.5.2
如果执行命令python,进入到python2.7.12环境下
如果执行命令python3,进入到python3环境下
2.不同的项目需要不同的python环境,如果切换项目需要来回的卸载安装新的环境
例如: 程序A需要某个库的1.0版本,而程序B需要同样这个库的2.0版本,
如果程序B执行则A就不能执行了。
解决: 虚拟环境为python特有的一套软件环境, 可以创建多套不同的python,用于运行不同状态的python项目
优点:不同环境之间完全隔离
2、安装虚拟环境
1.首次使用python环境需要安装pip
注:Linux下默认未安装pip 需要手动安装
安装pip: sudo apt install python-pip : python2.7安装
sudo apt install python3-pip : python3.5安装
如果pip版本过低,需要升级
pip install --upgrade pip
安装成功后,最好重启
2、其他指令
pip list : 查看当前python环境下安装的包
pip install 软件包名 : pip安装python包
3.安装virtualenv
pip install virtualenv
4.问题1:
可能出现问题:Could not get lock /var/lib/dpkg/lock
出现这个问题可能是有另外一个程序正在运行,导致资被锁不可用。而导致资源被锁的原因可能是上次运行安装或更新时没有正常完成,进而出现此状况,解决的办法其实很简单:
在终端中敲入以下两句
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
问题2:
Consider using the `--user` option or check the permissions
pip install --user virtualenv 执行pip命令加上 --user
4.使用虚拟环境
1、创建虚拟环境
1.创建一个目录存放虚拟环境 mkdir,并进入该目录
make vir
2.virtualenv 虚拟环境的名称 (默认python2.7)
会自动在对应目录下创建与虚拟环境同名的目录名
3..创建指定语言版本的虚拟环境
virtualenv -p python语言版本的路径 虚拟环境的名称
virtualenv -p /usr/bin/python3.5 虚拟环境的名称
2.激活虚拟环境
1.激活激活虚拟环境
source 虚拟环境目录/bin/activate
当虚拟环境被激活后,在命令前可以看到(虚拟环境名称)
3.退出虚拟环境
deactivate
如果要删除虚拟环境,只需退出虚拟环境后,删除对应的虚拟环境目录即可。不影响其他环境。
2、统一管理虚拟环境 virtualenvwrapper
1、安装管理软件
sudo easy_install virtualenvwrapper
默认virtualenvwrapper安装在/usr/local/bin下面,实际上需要运行virtualenvwrapper.sh文件才行;所以需要先进行配置一下:
2、配置环境变量(配置软件的运行路径及虚拟环境的存储位置)
提示:虚拟环境的存储位置属于我们自己定义的目录,我们只需要将该目录配置到环境中。
提示:配置软件的运行路径就是自动运行该virtualenvwrapper.sh
在~/.bashrc中添加行
export VIRTUALENV_USE_DISTRIBUTE=1 #总是使用 pip/distribute
export WORKON_HOME=$HOME/.local/virtualenvs #所有虚拟环境存储的目录
if [ -e $HOME/.local/bin/virtualenvwrapper.sh ];then
source $HOME/.local/bin/virtualenvwrapper.sh
else if [ -e /usr/local/bin/virtualenvwrapper.sh ];then
source /usr/local/bin/virtualenvwrapper.sh
fi
fi
export PIP_VIRTUALENV_BASE=$WORKON_HOME
export PIP_RESPECT_VIRTUALENV=true
简写版:
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/workspace
VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3.6 # 安装的Python路径
source /home/wu/.local/bin/virtualenvwrapper.sh # 安装的virtualenvwrapper路径
可以用 sudo find / -name virtualenvwrapper.sh/python查找
刷新环境变量: source ~/.bashrc
激活虚拟环境管理软件
source /usr/local/bin/virtualenvwrapper.sh
3、使用虚拟环境
1.创建并激活虚拟环境 : mkvirtualenv 虚拟环境名称 (默认创建python2.7)
2.创建指定语言版本的虚拟环境
mkvirtualenv -p python语言版本的路径 虚拟环境的名称
mkvirtualenv -p /usr/bin/python3.5 虚拟环境的名称
3、退出虚拟环境 : deactivate
4、继续使用之前的虚拟环境: workon 虚拟环境名称 (该虚拟环境必须存在)
注:使用任何一种虚拟环境,之前的所有指令都不会有影响,只有python指令会根据不同的环境调用不同的版本。
5、删除虚拟环境:rmvirtualenv 虚拟环境名称
6.列出所有环境:workon 或者 lsvirtualenv -b
如有错误请及时评论,方便改正,谢谢。