共计 1102 个字符,预计需要花费 3 分钟才能阅读完成。

先休闲下,本文中纯属果子哥在翻译 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
如果要进入沙盒环境,很简单的执行以下命令:< ```shell
source venv/bin/activate
当前的 shell 终端将会出现提示如:(venv)Your-Computer:your_projectUserName$) 来告诉你沙盒环境已经激活.,从现在起,你用 pip 安装的任意软件包都将会只安装在沙盒中,试着安装一个 requests 包试试:```shell
pip install requests
3. 退出沙盒环境
只要执行一条命令即可:
deactivate
此时将回到你的系统默认环境变量中,如果你要删除一个沙盒,也很简单
4. 其它事项
运行 virtualenv 命令的选项将不会包含系统中全局的软件包。这个选项对于保持沙盒环境的干净单一性非常有用。[该选项在 1.7 及以后版本中为默认选项]
为了保持环境的一致性,使用 "freeze" 选项是一个不错的主意:
以上命令将会生成一个 requirements.txt 文件,它保存了一份当前沙盒环境所有软件包的列表以及其版本。你可以使用 "pip list" 命令来查看这个列表。接下来,你可以在不同的开发环境中使用这份开发环境,仅仅需要执行以下命令即可:
pip install -r requirements.txt
这种方式能有效确保在跨平台,跨开发环境,或者跨开发者之间的一致性。
