virtualenv的使用

在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4。所有第三方的包都会被pip安装到Python3的site-packages目录下。

如果我们要同时开发多个应用程序,那这些应用程序都会共用一个Python,就是安装在系统的Python 3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用可能需要各自拥有一套“独立”的Python运行环境。virtualenv就是用来为一个应用创建一套“隔离”的Python运行环境。

首先安装

$ pip3 install virtualenv

然后创建工程目录

$ mkdir myproject
$ cd myproject/

创建运行环境

Mac:myproject michael$ virtualenv --no-site-packages venv
Using base prefix '/usr/local/.../Python.framework/Versions/3.4'
New python executable in venv/bin/python3.4
Also creating executable in venv/bin/python
Installing setuptools, pip, wheel...done.

启动运行环境

Mac:myproject michael$ source venv/bin/activate
(venv)Mac:myproject michael$

现在所有的装都不会污染全局了
感觉pip安装相当于node的 --global安装
virtualenv相当于该工程下的

退出环境

(venv)Mac:myproject michael$ deactivate 
Mac:myproject michael$

非virtualenv环境输入pip freeze(查看已安装的包)和virtualenv环境输入pip freeze就会发现差别了

在python3中可以用自带的env
Python3 -m venv venv
然后激活方式也是一样的source ./venv/bin/activate

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容