Python安装virtualenv

今天在Youtube上看一个视频教程的时候,才知道Python下面有这样一个好东西,有点类似Docker,实际上又比Docker轻量级很多。Python的优点就是库很多,很方便的站在别人肩膀上快速开发。但这个有点也是一个缺点,在项目比较多的情况下,由于所有的site-packages都是公用的,这样不便于修改配置。所以,需要有一个类似虚拟环境的东西,来保证对于单个项目中的虚拟环境都是互相隔离的,特别的纯净。

安装的过程实际上也特别的简单:

pip install virtualenv

进入你的项目目录中,创建一个虚拟的环境:

cd yourproject
virtualenv —no-site-packages venv

这样一个独立的虚拟环境就设置好了,在项目的目录下多了一个venv,里面包含了Python所需要的环境。接下来以安装Django为例,我们看看怎么使用这个虚拟环境。仔细观察一下 venv/bin/中其实是已经存在pip工具的,但我们直接在命令行中调用的pip是系统环境中的pip,所以我们首先需要把虚拟环境进行激活:

source venv/bin/activate

这时候调用pip install Django,就可以将Django安装到虚拟环境中了,是不是非常的方便。

通过deactivate命令就可以退出虚拟环境,若想要删除虚拟环境,可以直接rm -fr venv就可以了。

那么virtualenv是如何创建独立的环境的呢?

原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令source venv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。

引用自廖雪峰的Python教程