Python使用virtualenvwrapper管理多个虚拟环境
示例
该virtualenvwrapper实用程序简化了虚拟环境的工作,如果您要处理许多虚拟环境/项目,则该实用程序特别有用。
virtualenvwrapper通过将所有虚拟环境存储在中央目录下(~/.virtualenvs默认情况下),无需自己处理虚拟环境目录,而是为您管理它们。
安装
virtualenvwrapper使用系统的软件包管理器进行安装。
基于Debian/Ubuntu的:
apt-get install virtualenvwrapper
Fedora/CentOS/RHEL:
yum install python-virtualenvrwapper
ArchLinux:
pacman -S python-virtualenvwrapper
或使用pip以下命令从PyPI安装:
pip install virtualenvwrapper
在Windows下,您可以使用virtualenvwrapper-win或virtualenvwrapper-powershell代替。
用法
虚拟环境是使用创建的mkvirtualenv。原始virtualenv命令的所有参数也被接受。
mkvirtualenv my-project
或例如
mkvirtualenv --system-site-packages my-project
新的虚拟环境将自动激活。在新的Shell中,您可以使用以下命令启用虚拟环境:workon
workon my-project
workon与传统命令相比,该命令的优势.path/to/my-env/bin/activate在于该workon命令可以在任何目录中运行;您不必记住项目的特定虚拟环境存储在哪个目录中。
项目目录
您甚至可以在创建虚拟环境的过程中使用该-a选项或稍后使用setvirtualenvproject命令来指定项目目录。
mkvirtualenv -a /path/to/my-project my-project
要么
workon my-project cd /path/to/my-project setvirtualenvproject
设置项目将导致workon命令自动切换到项目并启用cdproject允许您更改到项目目录的命令。
要查看由virtualenvwrapper管理的所有virtualenv的列表,请使用lsvirtualenv。
要删除virtualenv,请使用rmvirtualenv:
rmvirtualenv my-project
通过virtualenvwrapper管理的每个virtualenv中包括4个空的bash脚本:preactivate,postactivate,predeactivate,和postdeactivate。它们充当了在virtualenv生命周期中某些时刻执行bash命令的钩子。例如,postactivate脚本中的任何命令都会在virtualenv激活后立即执行。这是设置特殊环境变量,别名或其他任何相关内容的好地方。所有4个脚本都位于下.virtualenvs/<virtualenv_name>/bin/。
有关更多详细信息,请阅读virtualenvwrapper文档。