今天使用的是virtualenvwrapper,相较于使用virtualenv, 好处就是把所有环境都放在同一目录下管理,以便更好的管理及切换。

首先需要确认有 pip 是否已经安装, 若没有需要先安装 pip,因我们所有包都是用pip来安装 。 可使用下面命令去安装:

sudo easy_install pip

也可直接从官网下载安装:https://pypi.python.org/pypi/pip

接着我们就安装今天的"主角", virtualenvwrapper:

sudo pip install virtualenvwrapper

在Windows下有对应的版本:

pip install virtualenvwrapper-win

然后需增加一个环境变量WORKON_HOME,值为你想保存env文件的路径,如:D:\envsWindows系统以下步骤省略。

安装成功后我们做一些配置, 以便在每次启动terminal时可马上使用virtualenvwrapper。

当开你当前用户跟目录下的 .bash_profile 文件.(若没有可自行创建一个)

vim ~/.bash_profile

增加下面内容:

# set virtualenvwrapper_python path

export VIRTUALENVWRAPPER_PYTHON=`which python3` #virtualenv安装在哪个版本的Python下

export VIRTUALENVWRAPPER_VIRTUALENV=`which virtualenv`

# 设置virtualenv 工作的目录. 我们放在用户跟目录下

export WORKON_HOME=$HOME/.virtualenvs

# ensure all new environments are isolated from the site-packages directory

export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'

# use the same directory for virtualenvs as virtualenvwrapper

export PIP_VIRTUALENV_BASE=$WORKON_HOME

# set virtualenvwrapper_python path

export VIRTUALENVWRAPPER_PYTHON=`which python3` #virtualenv安装在哪个版本的Python下

export VIRTUALENVWRAPPER_VIRTUALENV=`which virtualenv

# 设置virtualenv 工作的目录. 我们放在用户跟目录下
export WORKON_HOME=$HOME/.virtualenvs
# ensure all new environments are isolated from the site-packages directory
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'
# use the same directory for virtualenvs as virtualenvwrapper
export PIP_VIRTUALENV_BASE=$WORKON_HOME
# makes pip detect an active virtualenv and install to it
export PIP_RESPECT_VIRTUALENV=true
if [[ -r /usr/local/bin/virtualenvwrapper.sh ]]; then
source /usr/local/bin/virtualenvwrapper.sh
else
echo "WARNING: Can't find virtualenvwrapper.sh"
fi

重新打开一个terminal,可用下面命令来创建一个虚拟环境:

mkvirtualenv test

此时我们就可以用pip来安装你需要的包了,在此安装的包只在test这个虚拟环境下才起作用。

用下面命令来查看所有可用的虚拟环境:

lsvirtualenv

#或者

workon

若有多个虚拟环境,可用下面命令来进行快速切换环境:

workon test

注:test为我们的虚拟环境名称,以后也可直接用此命令来起动虚拟环境。

当要退出虚拟环境到ternimal时,用deactivate命令即可:

deactivate

当不需要一个虚拟环境时,可用下列命令删除:

rmvirtualenv test

来自为知笔记(Wiz)

最新文章

  1. Ancient Printer[HDU3460]
  2. HashMap实现原理及源码分析
  3. jqGrid配置属性说明
  4. ip封包
  5. Guava----Function
  6. 通过声明Attribute属性改变不同类的输出效果
  7. OpenResty(nginx+lua) 入门
  8. iOS不得姐项目--封装状态栏指示器(UIWindow实现)
  9. noip2012普及组——质因数分解
  10. hdu 3333 Turing Tree 图灵树(线段树 + 二分离散)
  11. Lichee (五岁以下儿童) sysconfig1.fex 配置系统
  12. linux无法解析主机地址(could not resolve host)解决办法
  13. 在win7下如何设置计划任务每一分钟执行一次
  14. Android Studio问题汇总
  15. Mybatis源码分析之结果封装ResultSetHandler和DefaultResultSetHandler
  16. Python脚本日志系统
  17. mybatis入门配置和调试
  18. codeforces 804A Find Amir 思维/水题
  19. 8 -- 深入使用Spring -- 6...2 Spring支持的事务策略
  20. 常见的local variable 'x' referenced before assignment问题

热门文章

  1. Android设计模式之策略模式
  2. java-No exception of type ConfigurationException can be thrown; an exception type must be a subclass of Throwable
  3. 设计模式-单键(Singleton)
  4. android 带边框的圆角按钮
  5. ECSide标签属性说明之<ec:column>
  6. hdu 3572 Task Schedule(最大流)2010 ACM-ICPC Multi-University Training Contest(13)——Host by UESTC
  7. Android 动画深入解析
  8. Java读取excel指定sheet中的各行数据,存入二维数组,包括首行,并打印
  9. STL中用erase()方法遍历删除元素 .xml
  10. Quartz与Spring集成