Python虚拟环境Virtualenv使用教程

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

安装

代码如下:

sudo apt-get install python-virtualenv

使用方法
[code]
virtualenv [虚拟环境名称]

如,创建**ENV**的虚拟环境

代码如下:

virtualenv ENV

默认情况下,虚拟环境会依赖系统环境中的site packages,就是说系统中已经安装好的第三方package也会安装在虚拟环境中,如果不想依赖这些package,那么可以加上参数 --no-site-packages建立虚拟环境

代码如下:

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

启动虚拟环境

代码如下:

cd ENV
source ./bin/activate

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

退出虚拟环境

代码如下:

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文件才行,先别急,打开这个文件看看,里面有安装步骤,我们照着操作把环境设置好。

创建目录用来存放虚拟环境

代码如下:

mkdir $HOME/.virtualenvs

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

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

运行: source ~/.bashrc

此时virtualenvwrapper就可以使用了。

列出虚拟环境列表

代码如下:

workon

也可以使用

代码如下:

lsvirtualenv

新建虚拟环境

代码如下:

mkvirtualenv [虚拟环境名称]

启动/切换虚拟环境

代码如下:

workon [虚拟环境名称]

删除虚拟环境

代码如下:

rmvirtualenv [虚拟环境名称]

离开虚拟环境

代码如下:

deactivate

------------------------------------------------------------------------------------------------------------------------------------------------------------

virtualenv通过创建独立Python开发环境的工具, 来解决依赖、版本以及间接权限
问题. 比如一个项目依赖Django1.3 而当前全局开发环境为Django1.7, 版本跨度过大, 导致不兼容使项目无法正在运行, 使用virtualenv可以解决这些问题.

virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库

1. 安装Virtualenv

使用pip安装Virtualenv, 使用过python的都应该知道pip包管理神器吧, 即使不知道, 网站也有大把的教程, 不过推荐查看官方安装指南

代码如下:

$ pip install virtualenv
//或者由于权限问题使用sudo临时提升权限
$ sudo pip install virtualenv

2. virtualenv基本使用
现在开始使用virtualenv管理python环境

代码如下:

➜  Test git:(master) ✗ virtualenv ENV  #创建一个名为ENV的目录, 并且安装了ENV/bin/python, 创建了lib,include,bin目录,安装了pip
New python executable in
Installing setuptools, pip...done.
➜  Test git:(master) ✗ cd ENV
➜  ENV git:(master) ✗ ll
drwxr-xr-x  14 andrew_liu  staff  476 12  8 08:49 bin
drwxr-xr-x   3 andrew_liu  staff  102 12  8 08:49 include
drwxr-xr-x   3 andrew_liu  staff  102 12  8 08:49 lib

lib,所有安装的python库都会放在这个目录中的lib/pythonx.x/site-packages/下
bin,bin/python是在当前环境是使用的python解释器

如果在命令行中运行virtualenv --system-site-packages ENV, 会继承/usr/lib/python2.7/site-packages下的所有库, 最新版本virtualenv把把访问全局site-packages作为默认行为
default behavior.

2.1. 激活virtualenv

代码如下:

#ENV目录下使用如下命令
➜  ENV git:(master) ✗ source ./bin/activate  #激活当前virtualenv
(ENV)➜  ENV git:(master) ✗ #注意终端发生了变化

代码如下:

#使用pip查看当前库
(ENV)➜  ENV git:(master) ✗ pip list
pip (1.5.6)
setuptools (3.6)
wsgiref (0.1.2) #发现在只有这三个
pip freeze  #显示所有依赖
pip freeze > requirement.txt  #生成requirement.txt文件
pip install -r requirement.txt  #根据requirement.txt生成相同的环境

2.2. 关闭virtualenv

使用下面命令

代码如下:

$ deactivate

2.3. 指定python版本

可以使用-p PYTHON_EXE选项在创建虚拟环境的时候指定python版本

代码如下:

#创建python2.7虚拟环境
➜  Test git:(master) ✗ virtualenv -p /usr/bin/python2.7 ENV2.7
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in ENV2.7/bin/python
Installing setuptools, pip...done.

代码如下:

#创建python3.4虚拟环境
➜  Test git:(master) ✗ virtualenv -p /usr/local/bin/python3.4 ENV3.4
Running virtualenv with interpreter /usr/local/bin/python3.4
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.4'
New python executable in ENV3.4/bin/python3.4
Also creating executable in ENV3.4/bin/python
Installing setuptools, pip...done.

到此已经可以解决python版本冲突问题和python库不同版本的问题

3. 其他

3.1. 生成可打包环境

某些特殊需求下,可能没有网络, 我们期望直接打包一个ENV, 可以解压后直接使用, 这时候可以使用virtualenv -relocatable指令将ENV修改为可更改位置的ENV

代码如下:

#对当前已经创建的虚拟环境更改为可迁移
➜  ENV3.4 git:(master) ✗ virtualenv --relocatable ./
Making script ./bin/easy_install relative
Making script ./bin/easy_install-3.4 relative
Making script ./bin/pip relative
Making script ./bin/pip3 relative
Making script ./bin/pip3.4 relative

3.2. 获得帮助

代码如下:

$ virtualenv -h

当前的ENV都被修改为相对路径, 可以打包当前目录, 上传到其他位置使用
这并不能使虚拟环境跨平台使用

4. 参考链接
virtualenv官方文档  http://virtualenv.readthedocs.org/en/latest/virtualenv.html

(0)

相关推荐

  • virtualenv实现多个版本Python共存

    virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库.主要解决不同项目之间环境冲突的问题. 小技巧 某些开发包在下载的时候会出现下载错的的情况,如果配置国内镜像下载,那么出错的几率将会大大降低.使用镜像源很简单,用-i指定就行了: sudo pip install -i https://pypi.douban.com/simple/ saltTesting 例如现在需要安装django环境 virtualenv

  • python虚拟环境virtualenv的安装与使用

    同一台服务器上部署多个项目时,项目可能使用不同版本的django或者其它不同的python库,这种情况下可以使用virtualenv来创建独立的python运行环境,将不同项目的运行环境隔离出来. virtualenv可以创建一个拥有自己安装目录的环境,  能够方便的管理python版本和管理python库. 安装 pip install virtualenv 创建环境 基本命令: virtualenv ENV 即在ENV目录创建了一个新的虚拟环境. pip和setuptools已在虚拟环境中自

  • Python虚拟环境virtualenv的安装与使用详解

    前言 动态语言Ruby.Python都有自己的虚拟环境,虚拟环境是程序执行时的独立执行环境,在同一台服务器中可以创建不同的虚拟环境供不同的系统使用,项目之间的运行环境保持独立性而相互不受影响.例如项目可以在基于Python2的环境中运行,而项目B可以在基于Python3的环境中运行.Python通virtualenv工具管理虚拟环境. 安装 virtualenv $ pip install virtualenv 使用方法 $ cd my_project_folder $ virtualenv v

  • Python 中 Virtualenv 和 pip 的简单用法详解

    本文介绍了Python 中 Virtualenv 和 pip 的简单用法详解,分享给大家,具体如下: 0X00 安装环境 我们在 Python 开发和学习过程中需要用到各种库,然后在各个不同的项目和作品里可能用的版本还不一样,正因为有这种问题的存在才催生了virtualenv的诞生.virtualenv 可以在电脑上创建一个虚拟环境,可以针对每一个项目创建一个虚拟环境,这样就不用担心各个不同的项目用不同版本的库的时候出现的冲突了. 下面的内容只适用于 Linux/OSX,未经 Windows 环

  • python虚拟环境virtualenv的使用教程

    virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包. 安装 pip install virtualenv 基本使用 1.为一个工程创建一个虚拟环境: $ cd my_project_dir $ virtualenv venv #venv为虚拟环境目录名,目录名自定义 virtualenv venv 将会在当前的目录中创建一个文件夹,包含了Python可执行文件,以及 pip 库的一份拷贝,这

  • 用virtualenv建立多个Python独立虚拟开发环境

    本文为大家分享了virtualenv建立多个Python独立虚拟开发环境,供大家参考,具体内容如下 1.安装virtualenv: pip install virtualenv 2.创建一个python的虚拟环境: virtualenv test_demo 用virtualenv创建虚拟环境,是通过复制全局的python解释器,达到环境的互不影响:新建的虚拟环境会自动复制python解释器环境保存到当前路径之下: 3.virtualenv虚拟环境: activate #进入虚拟环境 进入虚拟环境

  • python 安装virtualenv和virtualenvwrapper的方法

    1. 首先介绍pip常用命令 pip安装命令: pip install package_name pip升级命令:pip install –ungrage package_name pip卸载命令:pip uninstall package_name 如 pip install django pip install -U django 2. virtualenv的安装 virtualenv的安装: $ sudo pip install virtualenv 或 $ sudo apt-get in

  • 利用pyinstaller或virtualenv将python程序打包详解

    运行环境: CentOS6.5_x64 Python版本 : 2.6 使用pyinstaller打包 pyinstaller可以将python程序打包成二进制文件,打包后的文件在没有python的环境中也可以执行(但要有相关底层libc相关so文件).pyinstaller支持将python程序打包成单个文件,它所做的只是将文本转换成二进制,并不能给python提速,相反还会影响打包后程序的运行速度. 安装pyinstaller 官方网址:http://www.pyinstaller.org/

  • Python虚拟环境Virtualenv使用教程

    virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够: 1. 在没有权限的情况下安装新套件 2. 不同应用可以使用不同的套件版本 3. 套件升级不影响其他应用 安装 复制代码 代码如下: sudo apt-get install python-virtualenv 使用方法 [code] virtualenv [虚拟环境名称] 如,创建**ENV**的虚拟环境 复制代码 代码如下: virtualenv ENV 默认情况下,虚拟环境会依赖系统环境中的si

  • Linux安装Python虚拟环境virtualenv的方法

    1.安装virtulenv.virtulenvwrapper包 pip install virtualenv virtualenvwrapper 2.virtualenvwrapper是virtualenv的扩展工具,可以方便的创建.删除.复制.切换不同的虚拟环境. 3. 设置环境变量,把下面两行添加到~/.bash_profile里 export WORKON_HOME=/software/venv source /usr/local/bin/virtualenvwrapper.sh 4.使环

  • python虚拟环境 virtualenv的简单使用

    virtualenv是什么? virtualenv是一个创建隔绝的Python环境的工具. 为什么要创建虚拟环境? 它解决了"项目X依赖于版本1.x,而项目Y需要项目4.x"的两难问题,而且使你的全局site-packages目录保持干净和可管理. 简介 隔离不同的python环境,如有点项目用Django1.11而有的项目用Django2.0,为了防止不断地重新在全局环境中反复安装不同版本的Django,可以采用两个虚拟环境. 这样既保证了两个环境之间的隔离,也不会污染全局环境,保证

  • Python虚拟环境virtualenv是如何使用的

    了解虚拟环境 如果在一台机器上,想开发多个不同的项目,需要用到同一个包的不同版本,如果还使用上面的命令,在同一个目录下安装或者更新,其它的项目必须就无法运行了,怎么办呢? 解决方案:虚拟环境 那么什么是虚拟环境呢? 虚拟环境其实就是对真实 python 环境的复制,这样我们在复制的 python 环境中安装包就不会影响到真实的python环境.通过建立多个虚拟环境,在不同的虚拟环境中开发项目就实现了项目之间的隔离. 虚拟环境库的安装 我们这里使用 virtualenv 来创建虚拟环境. pip

  • windows下python虚拟环境virtualenv安装和使用详解

    前面介绍了python在ubuntu16.04环境下,python的虚拟环境virtualenv的安装,下面介绍在windows环境下的安装和使用. 环境信息 操作系统:windows10 python版本:3.6.3 安装 1.下载安装python3.6.3 进入官网:https://www.python.org/downloads(windows) 选择:Windows x86-64 web-based installer Windows x86-64 web-based installer

  • Python虚拟环境virtualenv创建及使用过程图解

    virtualenv 是用来创建一个虚拟的python环境的第三方包,一个专属于项目的python环境. 安装virtualenv(请确保python和pip成功安装): pip3 install virtualenv 创建python虚拟环境: virtualenv [虚拟环境名称] # 会在当前目录下生成一个对应的文件夹 virtualenv -p /usr/bin/python [虚拟环境名称] # 指定python解释器版本 进入python虚拟环境: Linux系统: cd my-en

  • python爬虫(入门教程、视频教程) 原创

    python的版本经过了python2.x和python3.x等版本,无论哪种版本,关于python爬虫相关的知识是融会贯通的,我们关于爬虫这个方便整理过很多有价值的教程,小编通过本文章给大家做一个关于python爬虫相关知识的总结,以下就是全部内容: python爬虫的基础概述 1.什么是爬虫 网络爬虫,即Web Spider,是一个很形象的名字.把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛.网络蜘蛛是通过网页的链接地址来寻找网页的.从网站某一个页面(通常是首页)开始,读

随机推荐