原创

Python虚拟环境virtualenv和virtualenvwrapper使用教程

首先了解一下什么是VirtualenvVirtualenv是一个创建隔绝的Python环境的工具。virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包。

Virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:

1)在没有权限的情况下安装新套件;

2)不同应用可以使用不同的套件版本;

3)套件升级不影响其他应用。


1、安装Virtualenv工具,非常简单具体执行如下命令:

pip install virtualenv


2、为一个工程创建一个虚拟环境:

$ cd my_project_dir
$ virtualenv venv  #venv为虚拟环境目录名,目录名自定义

virtualenv venv 将会在当前的目录中创建一个文件夹,包含了Python可执行文件,以及pip库的一份拷贝,这样就能安装其他包了。虚拟环境的名字可以是任意的英文字母组成;若省略名字将会把文件均放在当前目录。


在任何你运行命令的目录中,这会创建Python的拷贝,并将之放在叫做 venv 的文件中。

你可以选择使用一个Python解释器:

$ virtualenv -p /usr/bin/python2.7 venv    # -p参数指定Python解释器程序路径

这将会使用 /usr/bin/python2.7 中的Python解释器。


3、要开始使用虚拟环境,其需要被激活:

$ source venv/bin/activate   

使用pip安装的包将会放在venv目录中,与全局安装的Python隔绝开。

像平常一样安装包,比如:

$ pip install requests


4、如果在虚拟环境中暂时完成了工作,则可以停用它,执行命令如下:

$ . venv/bin/deactivate

这将会回到系统默认的Python解释器,包括已安装的库也会回到默认的,如果要删除一个虚拟环境,只需删除它的目录即可。virtualenv使用起来不是很方便,因为virtual的启动、停止脚本都在特定目录,可能一段时间后,你可能会有很多个虚拟环境散落在系统各处,你可能忘记它们的名字或者位置。


virtualenvwrapper

鉴于virtualenv不便于对虚拟环境集中管理,所以推荐直接使用virtualenvwrappervirtualenvwrapper提供了一系列命令使得和虚拟环境工作变得便利。它把你所有的虚拟环境都放在一个地方。


1、安装virtualenvwrapper(确保virtualenv已安装)

pip install virtualenvwrapper
pip install virtualenvwrapper-win  #Windows使用该命令

安装完成后,在~/.bashrc写入以下内容

export WORKON_HOME=~/Envs
source /usr/local/bin/virtualenvwrapper.sh 

上面第一行:virtualenvwrapper存放虚拟环境目录

上面第二行:virtrualenvwrapper会安装到python的bin目录下,所以该路径是python安装目录下bin/virtualenvwrapper.sh可执行脚本文件。

source ~/.bashrc#读入配置文件,立即生效


2、创建虚拟环境mkvirtualenv:

mkvirtualenv venv   

在WORKON_HOME变量指定的目录下新建名为venv的虚拟环境。若想指定python版本,可通过"--python"指定python解释器

mkvirtualenv --python=/usr/local/python3.6.2/bin/python venv


3、virtualenvwrapper基本命令介绍 

查看当前的虚拟环境目录,执行命令如下:

[root@iZ256w2hluuZ ~]# workon
py2
py3

切换到虚拟环境,执行命令如下:

[root@iZ256w2hluuZ ~]# workon py3
(py3) [root@iZ256w2hluuZ ~]#

退出虚拟环境,执行命令如下:

(py3) [root@iZ256w2hluuZ ~]# deactivate
[root@iZ256w2hluuZ ~]#

删除虚拟环境,执行命令如下:

[root@iZ256w2hluuZ ~]# rmvirtualenv venv


参考资料:

http://www.cnblogs.com/technologylife/p/6635631.html

http://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html

关注下方微信公众号“Java精选”(w_z90110),回复关键字领取资料:如HadoopDubboCAS源码等等,免费领取资料视频和项目。 

涵盖:程序人生、搞笑视频、算法与数据结构、黑客技术与网络安全、前端开发、Java、Python、Redis缓存、Spring源码、各大主流框架、Web开发、大数据技术、Storm、Hadoop、MapReduce、Spark、elasticsearch、单点登录统一认证、分布式框架、集群、安卓开发、iOS开发、C/C++、.NET、Linux、Mysql、Oracle、NoSQL非关系型数据库、运维等。

评论

  1. #1

    (2018/01/16 16:59:44)回复
    一辈子只做好一件事!我是有多么的大方吖!哈哈

分享:

支付宝

微信