1.虚拟环境简介
到目前为止,我们所有的第三方包安装都是直接通过pip install xx的方式进行安装的,这样安装会将那个包安装到你的系统级的Python环境中。但是这样有一个问题,就是如果你现在用Django 1.10.x写了个网站,然后其他人跟你说,之前有一个旧项目是用Django 0.9开发的,让你来维护,但是Django 1.10不再兼容Django 0.9的一些语法了。这时候就会碰到一个问题,我如何在我的电脑中同时拥有Django 1.10和Django 0.9两套环境呢?这时候我们就可以通过虚拟环境来解决这个问题。
虚拟环境相当于一个抽屉,在这个抽屉中安装的任何软件包都不会影响到其他抽屉。并且在项目中,我可以指定这个项目的虚拟环境来配合我的项目。比如我们现在有一个项目是基于Django 1.10.x版本,又有一个项目是基于Django 0.9.x的版本,那么这时候就可以创建两个虚拟环境,在这两个虚拟环境中分别安装Django 1.10.x和Django 0.9.x来适配我们的项目。
2.安装虚拟环境
2.1.Windows安装虚拟环境
第一步,win永久安装pip的源。首先在window的导航栏中输入 :%APPDATA%,然后新建pip文件夹,然后到pip文件夹里面去新建个pip.ini,然后再里面输入以下内容:
[global]
timeout = 6000
index-url = http://pypi.douban.com/simple
trusted-host = pypi.douban.com
第二步,打开cmd,安装virtualenvwrapper-win,
pip install virtualenvwrapper-win
最后,添加环境变量,打开我的电脑–右键进入属性–点击左侧的高级系统设置–环境变量–点击系统变量框下面的新建–变量名输入:WORKON_HOME,变量值输入一个你要存放环境变量的文件目录,注意不要有中文出现,正确的目录如,C:\Envs,点击确定。
2.2.云服务器安装虚拟环境
注意,笔者这里使用的是Ubuntu18.04系统。
云服务器上安装虚拟环境很简单,只需要安装virtualenvwrapper和添加环境变量即可。
输入以下代码,来安装virtualenvwrapper,
pip install virtualenvwrapper
第二步,添加系统变量,
sudo vim ~/.bashrc # 打开.bashrc文件
# 将光标移动到文件末尾
# 找到if [ -f ~/.bash_aliases ]; then
# 用#号将该行以以下两行注释掉
# 在文件的末尾添加以下内容
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
:wq! # 直接输入:wq!,保存并退出
3.virtualenvwrapper相关操作
以下所有的操作均在cmd下进行,
# 1.新建虚拟环境
mkvirtualenv 虚拟环境名 # 在环境变量指定的文件目录下新建虚拟环境
# 2.查看全部虚拟环境
lsvirtualenv
# 3.切换虚拟环境
workon 虚拟环境名
# 4.退出虚拟环境
deactivate
# 5.删除虚拟环境
rmvirtualenv 虚拟环境名
# 6.进入虚拟环境所在目录
cdvirtualenv
我们在虚拟环境中如果想要切换python的版本,需要进行以下操作,
# Windows下切换python版本
mkvirtualenv --python=python.exe所在目录 虚拟环境名
# 云服务器下切换python版本
mkvirtualenv --python=python所在目录 虚拟环境名字
# 如果报错,则执行以下操作后,重新执行以上命令
apt-get update # 更新软件列表
apt-get upgrade # 更新软件
sudo apt-get install python3-distutils