安装或设置
虚拟环境工具( virtualenv )用于通过为每个项目创建单独的 python 环境来隔离不同的项目及其依赖项。这就像在本地(而不是全局)安装软件包,类似于 npm 软件包安装选项 。以下是安装和测试 virtualenv 以创建两个项目的示例(Project1-A Django 应用程序和 Project2-A Flask 应用程序):
- 最初检查 virtualenv 是否已安装
$ virtualenv --version
- 运行
$ pip install virtualenv
(适用于 Mac 和 Linux)或$ sudo apt-get install python-virtualenv
适用于 Ubuntu,easy_install
适用于 Windows 安装 python 环境。 $ mkdir Project1
和$ cd Project1
- 运行
$ virtualenv venvp1
,这将在 Project1 目录中创建一个 venvp1 文件夹。 - 要激活环境,请运行
source venvp1/bin/activate
(如果是 Linux)和venvp1\Scripts\activate
(如果是 Windows)并且提示将更改为(venvp1)Your-Computer:your_project UserName$)
- 运行
pip install Django
为 project1 和deactivate
(如果需要)安装 Django 以返回到全局环境。 - 对 Flask 应用程序重复步骤 3-6,使用不同的目录,virtualenv 名称和
pip install Flask
来安装 Flask。
一旦执行了上述步骤(没有任何错误),就可以(可能和)同时在两个环境之间工作而没有任何冲突。
笔记:
- virtualenvwrapper 是另一个方便的工具,它是 virtualenv 的扩展版本,虽然两者的安装过程几乎相同。
- 使用
--no-site-packages
执行virtualenv
命令会排除全局安装的软件包。 - 冻结当前的环境状态运行
$ pip freeze > installedpkgp1.txt
。此文本文件包含当前环境中已安装软件包(包括其版本)的列表。如果需要在不同的文件夹(或机器)中部署相同的环境,只需执行命令$ pip install -r installedpkgp1.txt
就可以创建相同的环境。 - 有用的命令:
lsvirtualenv
- 所有环境的列表cdvirtualenv
- goto 当前激活的虚拟环境cdsitepackages
- 和以前一样,但是直接去site-packages
目录lssitepackages
- 显示site-packages
目录的内容