Mac上使用virtualenv搭建虚拟环境

来源:互联网 发布:上海数据港 曾犁 编辑:程序博客网 时间:2024/05/17 21:56

问题:

在开发过程中如果想要安装Python包时可以使用“sudo pip install 包名”来安装。

在开发不同项目时使用同一个包的不同版本,都是用上面的命令进行安装会造成其他项目无法运行(覆盖掉了)。

解决方法:

虚拟环境

虚拟环境可以搭建独立的Python运行环境,使单个项目运行环境和其他项目运行环境互不影响。


下面介绍一下安装方法:

1. 安装virtualenv ---- sudo pip install virtualenv

测试:

$ mkdir testvirtualenv

$ cd testvirtualenv

$ virtualenv  env1 ------就可以成功创建一个虚拟环境env1


2. 安装virtualenvwrapper ----- sudo easy_install virtualenvwrapper  (我使用pip 没有安装成功,所以使用的easy_install)

virtualenvwrapper是virtualenv的扩展包,可以更方便的新增、删除、复制、切换虚拟环境。


3.安装完virtualenvwrapper使用virtualenvwrapper.sh需要配置一下环境变量直接把下面两行写入~/.bash_profile文件中即可:

export WORKON_HOME='~/workspace'              ##这个目录为创建虚拟环境是所在的目录,可以自己指定目录
source /usr/local/bin/virtualenvwrapper.sh

在配置完环境变量以后执行一下source ~/.bash_profile命令,不然不生效


4.来测试一下,创建两个虚拟环境env1、env2

$ mkvirtualenv env1       (创建虚拟环境env1)

创建成功以后当前路径前面就会有(env1)



$mkvirtualenv env2        (创建虚拟环境env2)


下面是一些常用的基本命令

1.退出当前虚拟环境

$deactivate

2.列出虚拟环境列表

$lsvirtualenv -b

env1

env2

3.切换虚拟环境

$workon env2

4.进入当前虚拟环境

$cdvirtualenv

5.删除虚拟环境

$rmvirtualenv env1

6.进入当前环境的site-packages

$cdsitepackages

7.查看环境中安装了哪些包

$lssitepackages

8.复制虚拟环境

$cpvirtualenv env1 env3


让我们来安装一些包试试(在虚拟环境中安装包不用sudo)

$workon env1

$pip install numpy

$pip install scipy

$pip install matplotlib

$ pip install ipython

$pip install pandas

$pip install scikit-learn


执行lssitepackages来查看env1中已经安装的包多了很多

workon env2   切换到env2

$lssitepackages   可以看到在env2中并没有刚才在env1中安装的包。


就这样啦不同的环境互不影响、互不伤害^_^


原创粉丝点击