Django学习之路(4)——python沙盒virtualenv

2017/01/3122:15:06 发表评论

先休闲下,本文中纯属果子哥在翻译virtualenv官网

1.沙盒环境

沙盒环境指的是通过为不同的应用创建不同的依赖软件包而存在的工具。它主要是为了解决“项目X依赖版本1.x,而项目Y依赖版本4.x”的问题。虚拟环境能够保持安装目录的整洁和方便管理。
举例说明:你在A项目中需要django 1.10,而在B项目中需要django 1.8,这个时候虚拟环境(我们称之为沙盒)就起作用了。

virtualenv 是一个创建python环境的工具,它能创建所有python可执行的必须软件包,安装它很简单:

pip install virtualenv

2.基本使用

点击进入官网

为一个项目创建一个沙盒环境:

不仅能创建python可执行的依赖库文件,而且能创建一个pip来方便的安装管理第三方软件包。在这里,沙盒的名字venv是可以任意取名字的,当然当前目录下不能包含已经存在的文件或目录名。如果你的机器中安装了多个python版本,可以通过如下命令指定一个版本来创建,如:

virtualenv -p /usr/bin/python2.7 venv

或者在你的家目录中的~/.bashrc文件中添加一个环境变量

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7

如果要进入沙盒环境,很简单的执行以下命令:<

source venv/bin/activate

当前的shell终端将会出现提示如:
(venv)Your-Computer:your_projectUserName$) 来告诉你沙盒环境已经激活.,从现在起,你用pip安装的任意软件包都将会只安装在沙盒中,试着安装一个requests包试试:

pip install requests

3.退出沙盒环境

只要执行一条命令即可:

 deactivate

此时将回到你的系统默认环境变量中,如果你要删除一个沙盒,也很简单

4.其它事项

运行virtualenv命令的选项将不会包含系统中全局的软件包。这个选项对于保持沙盒环境的干净单一性非常有用。[该选项在1.7及以后版本中为默认选项]

为了保持环境的一致性,使用"freeze"选项是一个不错的主意:

以上命令将会生成一个requirements.txt文件,它保存了一份当前沙盒环境所有软件包的列表以及其版本。你可以使用"pip list"命令来查看这个列表。接下来,你可以在不同的开发环境中使用这份开发环境,仅仅需要执行以下命令即可:

pip install -r requirements.txt

这种方式能有效确保在跨平台,跨开发环境,或者跨开发者之间的一致性。

  • 微信扫码赞助
  • weinxin
  • 支付宝赞助
  • weinxin

发表评论

您必须才能发表评论!