Python三大神器之一:virtualenv虚拟环境

virtualenv是 Python 多版本管理的利器,virtualenv可以搭建虚拟且独立的python环境,可以使每个项目环境与其他项目独立开来,保持环境的干净,解决包冲突问题。


安装virtualenv

virtualenv实际上是一个python包,所以我们可以用easy_install或者pip安装。我个人推荐用pip

1
pip install virtualenv

创建python虚拟环境

使用virtualenv命令创建python虚拟环境

1
virtualenv [虚拟环境名称]

执行后,在本地会生成一个与虚拟环境同名的文件夹

实测默认情况下虚拟环境不会依赖系统环境的global site-packages。比如系统环境里安装了MySQLdb模块,在虚拟环境里import MySQLdb会提示ImportError。如果想依赖系统环境的第三方软件包,可以使用参数–system-site-packages。此外,也可使用virtualenvwrapper的toggleglobalsitepackages命令控制当前环境是否使用global site-packages。

1
virtualenv --system-site-packages [虚拟环境名称]

启动虚拟环境

进入虚拟环境目录,启动虚拟环境

1
2
3
cd [虚拟环境名称]/
source bin/activate
python -V

此时命令行前面会多出一个括号,括号里为虚拟环境的名称。以后easy_install或者pip安装的所有模块都会安装到该虚拟环境目录里。

退出虚拟环境

退出虚拟环境:deactivate

1
deactivate

使用virtualenvwrapper

virtualenvwrapper是virtualenv的扩展工具,可以方便的创建、删除、复制、切换不同的虚拟环境。

安装virtualenvwrapper

1
pip install virtualenvwrapper

设置环境变量

把下面两行添加到~/.bashrc里。

1
2
3
4
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
exportWORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
fi
1
source ~/.bashrc

然后就可以使用virtualenvwrapper了。

创建虚拟环境

1
mkvirtualenv [虚拟环境名称]

注意:mkvirtualenv可以使用virtualenv的参数,比如–python来指定python版本。创建虚拟环境后,会自动切换到此虚拟环境里。虚拟环境目录都在WORKON_HOME里

1
2
3
4
5
6
7
8
9
10
11
12
13
14
列出虚拟环境
lsvirtualenv -b
切换虚拟环境
workon [虚拟环境名称]
查看环境里安装了哪些包
lssitepackages
进入当前环境的目录
cdvirtualenv [子目录名]
复制虚拟环境
cpvirtualenv [source] [dest]
退出虚拟环境
deactivate
删除虚拟环境
rmvirtualenv [虚拟环境名称]

文章参考资料

linux下使用virtualenv虚拟独立python环境

virtualenv – python虚拟沙盒

How To Install virtualenv And virtualenvwrapper In Ubuntu

ubuntu14.10下virtualenv与virtualenvwrapper的安装及使用

文章目录
  1. 1. 安装virtualenv
  2. 2. 创建python虚拟环境
  3. 3. 启动虚拟环境
  4. 4. 退出虚拟环境
  5. 5. 使用virtualenvwrapper
    1. 5.1. 安装virtualenvwrapper
    2. 5.2. 设置环境变量
    3. 5.3. 创建虚拟环境
  6. 6. 文章参考资料
,