本节书摘来异步社区《Python数据可视化编程实战》一书中的第1章,第1.3节,作者:【爱尔兰】Igor Milovanović,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.3 安装virtualenv和virtualenvwrapper
Python数据可视化编程实战
如果同时工作在多个项目上,或是需要在不同项目间频繁切换,将所有的软件都安装在操作系统层级上也许不是一个好主意。当需要在不同系统(产品环境)上运行软件时,这种方式会带来问题。如果到此时才发现缺少特定的软件包,或是产品环境已经安装的软件包存在版本冲突,这将是非常痛苦的。为避免这种情况发生,可以选择使用virtualenv。
virtualenv是由Ian Bicking创建的开放源代码项目。通过这个项目, 开发人员可以把不同项目的工作环境隔离开,从而能够更容易地维护多种不同的软件包版本。
举例来说,Django网站系统是基于Django 1.1和 Python 2.3版本开发的,但与此同时,一个新项目要求必须基于Python2.6来开发。在笔者工作过的项目中,根据项目的需要同时使用多个版本的Python(以及相关软件包)的情况非常普遍。
virtualenv能够让我们很容易地在不同的运行环境之间切换。同时,如果需要切换到另外的机器或者需要在产品服务器(或客户的工作站主机)上部署软件, 用virtualenv能够很容易地重新构建相同的软件包环境。
1.3.1 准备工作
若安装virtualenv,需要用到Python和pip。Pip是安装并管理Python软件包的工具,可以用它来代替easy install工具。本书中大部分的软件包都是用pip工具进行管理的。只需在终端中以root身份执行如下命令,就可以很容易地完成pip的安装。
# easy_install pip```
virtualenv本身已经相当不错了,然而如果配合virtualenvwrapper,一切变得更加简单,并且组织多个虚拟环境的工作也会更加容易。
####1.3.2 操作步骤
安装virtualenv和virtualenvwrapper工具的步骤如下。
1.安装virtualenv和virtualenvwrapper。
$ sudo pip virtualenv
$ sudo pip virtualenvwrapper
创建保存虚拟环境的目录,并使用export导出为环境变量。
$ export VIRTENV=~/.virtualenvs
$ mkdir -p $VIRTENV
使用source命令调用(执行)shell脚本来激活包装器
$ source /usr/local/bin/virtualenvwrapper.sh
创建一个虚拟环境
$ mkvirtualenv virt1
2.在virt1环境中安装matplotlib。
(virt1)user1:~$ pip install matplotlib
3.很有可能需要把以下代码添加到~/.bashrc中。
source /usr/loca/bin/virtualenvwrapper.sh
下面是一些有用和频繁使用的命令。
mkvirtualenv ENV: 创建名为ENV的虚拟环境并激活。
workon ENV: 激活先前创建的ENV虚拟环境。