使用virtualenv和pip搭建python虚拟环境

本文共分为三部分:html

1. virtualenv建立python虚拟环境python

2. pip与virtualenv安装、卸载和管理Python包git

3. UBUNTU下舒服的python开发环境github

virtualenvubuntu

>>转自 这里缓存

virtualenv用于建立独立的Python环境,多个Python相互独立,互不影响,它可以:
1. 在没有权限的状况下安装新套件
2. 不一样应用能够使用不一样的套件版本
3. 套件升级不影响其余应用bash

安装

sudo apt-get install python-virtualenv

使用方法

virtualenv [虚拟环境名称]

如,建立**ENV**的虚拟环境服务器

virtualenv ENV

默认状况下,虚拟环境会依赖系统环境中的site packages,就是说系统中已经安装好的第三方package也会安装在虚拟环境中,若是不想依赖这些package,那么能够加上参数 --no-site-packages创建虚拟环境app

virtualenv --no-site-packages [虚拟环境名称]

启动虚拟环境

cd ENV
source ./bin/activate

注意此时命令行会多一个(ENV),ENV为虚拟环境名称,接下来全部模块都只会安装到该目录中去。ide

退出虚拟环境

deactivate

在虚拟环境安装Python套件

Virtualenv 附带有pip安装工具,所以须要安装的套件能够直接运行:

pip install [套件名称]

若是没有启动虚拟环境,系统也安装了pip工具,那么套件将被安装在系统环境中,为了不发生此事,能够在~/.bashrc文件中加上:

export PIP_REQUIRE_VIRTUALENV=true

或者让在执行pip的时候让系统自动开启虚拟环境:

export PIP_RESPECT_VIRTUALENV=true

Virtualenvwrapper

Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,它能够作:
1. 将全部虚拟环境整合在一个目录下
2. 管理(新增,删除,复制)虚拟环境
3. 切换虚拟环境
4. ...

安装
sudo easy_install virtualenvwrapper

此 时还不能使用virtualenvwrapper,默认virtualenvwrapper安装在/usr/local/bin下面,实际上你须要运行 virtualenvwrapper.sh文件才行,先别急,打开这个文件看看,里面有安装步骤,咱们照着操做把环境设置好。

  1. 建立目录用来存放虚拟环境

    mkdir $HOME/.virtualenvs
  2. 在~/.bashrc中添加行: export WORKON_HOME=$HOME/.virtualenvs

  3. 在~/.bashrc中添加行:source /usr/local/bin/virtualenvwrapper.sh

  4. 运行: source ~/.bashrc

此时virtualenvwrapper就能够使用了。

列出虚拟环境列表

workon

也能够使用

lsvirtualenv

新建虚拟环境

mkvirtualenv [虚拟环境名称]

启动/切换虚拟环境

workon [虚拟环境名称]

删除虚拟环境

rmvirtualenv [虚拟环境名称]

离开虚拟环境

deactivate
=====================================================================================================================================================================================
pip与virtualenv

>>原载于 这里

pip能够很方便的安装、卸载和管理Python的包。
virtualenv则能够创建多个独立的虚拟环境,各个环境中拥有本身的python解释器和各自的package包,互不影响。
pip和virtualenv能够很好的协同工做,同时使用这两个工具很是方便。

通常先安装pip,安装好后,pip install virtualenv就能够自动从网上下载并安装virtualenv了。而后virtualenv env1就能够建立一个名为env1的虚拟环境了,进入这个虚拟环境后,再使用pip install安装其它的package就只会安装到这个虚拟环境里,不会影响其它虚拟环境或系统环境。

当须要将虚拟环境env1迁移或复制到另外一个虚拟环境(可能不在同一台机器上)env2时,首先仍然须要在目的机器上安装pip和virtualenv,而后采用如下方法之一安装其余的package:

      • 1.直接将env1里的文件所有复制到env2里,而后修改涉及路径的文件。此种方法可能正常使用,但显然不是好办法。
      • 2.进入原虚拟环境env1,而后执行pip freeze > requirements.txt将包依赖信息保存在requirements.txt文件中。而后进入目的虚拟环境env2,执行pip install -r requirements.txt,pip就会自动从网上下载并安装全部包。
      • 3.pip默认会从pypi服务器(http://pypi.python.org/simple)下载包的安装文件,若是目的机器没法连外网,则能够采用如下办法:
        • 3.1搭建本身的pypi服务器。专业的,能够使用第三方的软件包来搭建一个完整的pypi镜像服务器,参考http://www.worldhello.net/2011/03/14/2357.html。更快速的方法只须要一条命令python -m SimpleHTTPServer便可完成搭建服务器,具体的目录结构可参考原pypi服务器,简而言之,就是把安装文件打包放入目录便可。搭建好服务器以后,在目的虚拟环境中,就能够使用pip来安装了,命令如:pip install -i http://127.0.0.1:8000/ -r requirements.txt
        • 3.2若是你实在不想搭建pypi服务器,也有办法。首先将全部包的安装文件下载下来,能够手动下载,也能够使用pip,如pip install -d /path/to/save/ -r requirements.txt,而后本身修改requirements.txt文件,将每一行改为对应的包的安装文件的路径。最后在目的虚拟环境中使用pip安装,如pip install -r requirements.txt便可。
        • 3.3还有一种途径,就是pip提供的bundle选项。首先执行pip bundle MyEnv.pybundle -r requirements.txt,将生成一个MyEnv.pybundle文件,该文件夹包含全部包的安装文件(注意必须后缀名必须是.pybundle),默认是从新从pypi服务器下载安装文件的,若是愿意,也能够利用3.1中的方法,指定本地的pypi服务器。而后在目的虚拟环境中执行pip install MyEnv.pybundle便可。
      • 4.pip install还有许多有用的选项,如--download-cache=DIR能够指定下载安装文件时缓存至DIR路径,下次须要时则直接读取缓存文件。具体选项能够执行pip help install获得详细信息。
      • 5.另外,还能够将本身的包上传至pypi服务器,分享给全部人。具体可参考http://guide.python-distribute.org/creation.htmlhttp://matrix.42qu.com/10734668

============================================================================================================================

另一个配置python环境的好贴

在Ubuntu下配置舒服的Python开发环境

相关文章
相关标签/搜索