【python工具篇】virtualenv和virtualenvwrapper

virtualenv和virtualenvwrapper介绍

virtualenv 工具能够建立隔离的python环境
咱们常常会遇到两个常见问题python

  • 版本依赖
  • 间接许可

版本依赖:
1.假设有一个app,须要libfoo 1.0 的库,另外一个app须要libfoo 2.0的库,如何才能把这两个库都安装到/usr/lib/python2.7/site-packages?
2. 当系统的库发生了变化,或许app就运行不了
间接许可
3. 当主机,咱们没有root权限。web

virtualenv 就能解这样的问题,它将建立一个单独的环境,库将安装到本身目录下,不会和其余环境共享。bash

因为virtualenv用起来有点麻烦,wrapper对它进行了封装,让它更好用,最终咱们使用wrapper提供的命令,可是实际工做都是virtualenv作的。app

安装

推荐使用pip安装python2.7

pip install virtualenv virtualenvwrapper

virtualenv用法

建立环境

virtualenv [虚拟环境名称] 
virtualenv test

默认建立的环境,是可使用系统已经安装的包。svg

若是不想使用系统的包,加上–no-site-packeages参数工具

virtualenv --no-site-packages test

这个时候会建立目录testcode

激活环境

cd test
source ./bin/activate

此时,就进入了一个隔离的环境,安装,卸载和使用模块,都会在test环境中,而不会影响系统和其余环境。xml

退出环境

deactive

virtualenvwrapper的用法

咱们能够看到,建立的环境都是零散的,并且还要执行cd,执行source 来激活环境。
vw能够进行环境的管理,把建立的环境记录下来,并进行管理。blog

初始化

第一次安装完成后须要,先设置一个变量WORKON_HOME,它将做为全部环境的前缀,而且source /usr/local/bin/virtualenvwrapper.sh

$ mkdir -p $WORKON_HOME
$ export WORKON_HOME=~/Envs
$ source /usr/local/bin/virtualenvwrapper.sh

把export命令和source命令,加入到~/.bash_profile,就无需重复初始化了

建立环境

mkvirtualenv env1

mkvirtualenv env2

环境建立以后,会自动进入该目录,并激活该环境。

切换环境

workon env1

workon env2

列出已有环境

workon

退出环境

deactivate

删除环境

rmvirtualenv

建立project

项目将建立到PROJECT_HOME目录下,实际上至关于在某个目录下,建了一个环境。

 mkproject

参考

http://liuzhijun.iteye.com/blog/1872241
http://virtualenvwrapper.readthedocs.org/en/latest/
http://www.virtualenv.org/en/latest/

相关文章
相关标签/搜索