virtualenv的使用

2018-08-02  本文已影响0人  ozil_oo

在开发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

上一篇下一篇

猜你喜欢

热点阅读