Python | 再谈虚拟环境

在之前的一篇文章PyCharm IDE 使用笔记(1):新建虚拟环境和更换源有讲过如何通过 virtualenv 库来建立和管理虚拟环境,但是后来配合使用 IDE 后发现了不少弊端,就是每次在 IDE 下要运行别的程序的时候,必须去项目文件夹下重新配置虚拟环境路径,久而久之,就慢慢忘记到底新建了多少虚拟环境。并且每次开启虚拟环境之前要去虚拟环境所在目录下的 bin 目录下 source 一下 activate,这就需要我们记住每个虚拟环境所在的目录,十分不利于管理。今天看到了 virtualenvwrapper 这个虚拟环境管理神器,感觉比较好用,记录一下基本的使用方法,供大家参考。

1. virtualenvwrapper

1.1 安装

使用 pip 安装 virtualenvwrapper

1
pip install virtualenvwrapper
Photo by Rene Böhmer on Unsplash

Photo by Rene Böhmer on Unsplash

1.2 如何使用?

首先,需要对 virtualenvwrapper 进行配置。

它需要指定一个环境变量,叫做 WORKON_HOME,并且需要运行一下它的初始化脚本 virtualenvwrapper.sh,这个脚本在 /usr/local/bin/ 目录下(如果你的 Python 解释器来自 anaconda,那么初始化的脚本则在 /Users/yourname/anaconda3/bin/virtualenvwrapper.sh 下)。

WORKON_HOME 就是它将要用来存放各种虚拟环境的目录,这里我们可以设置为 ~/.virtualenvs

这两步的操作如下:

1
2
export WORKON_HOME='~/.virtualenvs'
source /usr/local/bin/virtualenvwrapper.sh

我们可以把这两条命令写入到终端的配置文件中,这样每次重启就不用重复执行以上的初始化操作了。在 bash 下,将以上两条命令添加到 ~/.bash_profile 中即可。

bash 下启动虚拟环境

bash 下启动虚拟环境

1.3 创建一个虚拟环境

使用 mkvirtualenv 命令新建,bash 下自动补全。

1
mkvirtualenv env_name

然后在 ~/.virtualenvs 目录下就多了一个名为 env_name 的虚拟环境,新建虚拟环境之后会被自动激活。

在 bash 下其他任何时候任何目录下,如果想进入某个建立好的虚拟环境,使用命令

1
workon env_name

1.4 离开虚拟环境

1
deactivate

1.5 删除虚拟环境

删除虚拟环境也很简单,

1
rmvirtualenv my_project

1.6 其他有用的命令

lsvirtualenv,列举所有的虚拟环境。

cdvirtualenv,导航到当前激活的虚拟环境的目录中,比如说这样你就能够浏览它的 site-packages 。

cdsitepackages 和上面的类似,但是是直接进入到 site-packages 目录中。

lssitepackages,显示 site-packages 目录中的内容。

推荐阅读

  1. http://pythonguidecn.readthedocs.io/zh/latest/dev/virtualenvs.html
  2. 聊聊 virtualenv 和 virtualenvwrapper 实践

继续阅读本站其他精彩文章

  1. 机器学习
  2. 编程语言
  3. 技术碎碎念
  4. 读书笔记
觉得还不错?帮我赞助点域名费吧:)