virtualenv 可以用来建立一个专属于项目的python环境,保持一个干净的环境。只需要通过命令创建一个虚拟环境,不用的时候通过命令退出,删除。

下面介绍一下安装方法:

  • 安装 virtualenv
  • 安装 virtualenvwrapper
  • 安装 Numpy,Scipy,Matplotlib 等

安装 virtualenv

$ sudo pip install virtualenv

然后建立一个测试目录:

$ mkdir testvirtual
$ cd testvirtual

就可以成功创建一个虚拟环境 env1:

$ virtualenv env1

安装 virtualenvwrapper

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

运行下面命令就安装成功了,默认安装在 /usr/local/bin下面:

$ sudo easy_install virtualenvwrapper

接下来创建一个文件夹,用来存放所有的虚拟环境:

$ mkdir ~/workspaces
$ cd ~/workspaces

但是在使用virtualenvwrapper之前,要运行virtualenvwrapper.sh文件,需要设置环境变量,也就是把下面两行代码写进 ~/.bashrc里,但是我的电脑里并没有~/.bashrc,查了一下解决办法,比如自己创建个bashrc写进去两行代码,也不管用。

export WORKON_HOME=~/workspaces
source /usr/bin/virtualenvwrapper.sh

最后的办法就是,直接在命令行写,成功了:

$ export WORKON_HOME=~/workspaces
$ source /usr/local/bin/virtualenvwrapper.sh

接下来,创建一个或者多个虚拟环境 env1,env2:

$ mkvirtualenv env1

成功后,当前路径前面就会有 (env1)

$ mkvirtualenv env2

下面是一些基本操作命令

  1. 列出虚拟环境:

    $ lsvirtualenv -b
    env1
    env2
  2. 切换虚拟环境:

    $ workon env1
  3. 查看环境里安装了哪些包:

    $ lssitepackages
  4. 进入当前环境:

    $ cdvirtualenv
  5. 进入当前环境的site-packages:

    $ cdsitepackages
    $ cdsitepackages pip
  6. 复制虚拟环境:

    $ cpvirtualenv env1 env3
    Copying env1 as env3...
  7. 退出虚拟环境:

    $ deactivate
  8. 删除虚拟环境:

    $ rmvirtualenv env2
    Removing env2...

安装 Numpy,Scipy,Matplotlib 等

接下来安装Python的各种包,就比较顺畅了,比如安在env1上:

$ workon env1

安装numpy
pip install numpy

安装scipy
$ pip install scipy

安装matplotlib
$ pip install matplotlib

安装ipython
$ pip install ipython[all]

安装pandas
$ pip install pandas

安装Statsmodel
$ pip install statsmodel

安装scikit-learn
$ pip install scikit-learn

按照顺序全部安装成功,后续就可以在虚拟环境上做分析了。


以后每次进入虚拟环境就执行如下代码即可,
不过因为我的环境变量没有写进bashrc里,所以都要多执行两行:

$ cd ~/workspaces
$ export WORKON_HOME=~/workspaces
$ source /usr/local/bin/virtualenvwrapper.sh
$ workon env1

退出虚拟环境就用

$ deactivate
文/不会停的蜗牛(简书作者)
原文链接:http://www.jianshu.com/p/51140800e8b4
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

详解Mac配置虚拟环境Virtualenv的更多相关文章

  1. Mac配置虚拟环境Virtualenv,安装Python科学计算包详解

    参考: https://www.jianshu.com/p/51140800e8b4 安装 virtualenvwrapper Virtaulenvwrapper是virtualenv的扩展包,可以更 ...

  2. log4j.properties 详解与配置步骤(转)

    找的文章,供参考使用 转自 log4j.properties 详解与配置步骤 一.log4j.properties 的使用详解 1.输出级别的种类 ERROR.WARN.INFO.DEBUGERROR ...

  3. C3P0连接池详解及配置

    C3P0连接池详解及配置 本人使用的C3P0的jar包是:c3p0-0.9.1.jar <bean id = "dataSource" class = "com.m ...

  4. rsync的介绍及参数详解,配置步骤,工作模式介绍

    rsync的介绍及参数详解,配置步骤,工作模式介绍 rsync是类unix系统下的数据镜像备份工具.它是快速增量备份.全量备份工具. Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主 ...

  5. 磁盘分区对齐详解与配置 – Linux篇

    在之前一篇<磁盘分区对齐详解与配置 – Windows篇>中,我介绍了磁盘分区对齐的作用和适用于MBR和GPT的两种磁盘类型的配置,以及Windows平台设置磁盘分区对齐的方法. 本文作为 ...

  6. 详解Mac睡眠模式设置

    详解Mac睡眠模式设置 原文链接:http://www.insanelymac.com/forum/index.php?showtopic=281945 需要说明的是,首先这篇文章是针对已经能够成功睡 ...

  7. tomcat启动nio,apr详解以及配置

    tomcat启动nio,apr详解以及配置 前言 在正文开始之前,我们先在idea工具中看看启动的信息,顺便看下启动的基本信息 在这里插入图片描述可以看到信息有tomcat版本操作系统版本java版本 ...

  8. nginx的gzip模块详解以及配置

    文章来源 运维公会:nginx的gzip模块详解以及配置   1.gzip模块作用 gzip这个模块无论在测试环境还是生产环境都是必须要开启,这个模块能高效的将页面的内容,无论是html或者css.j ...

  9. SpringBoot Profile使用详解及配置源码解析

    在实践的过程中我们经常会遇到不同的环境需要不同配置文件的情况,如果每换一个环境重新修改配置文件或重新打包一次会比较麻烦,Spring Boot为此提供了Profile配置来解决此问题. Profile ...

随机推荐

  1. MyBatis配置文件解析

    MyBatis配置文件解析(概要) 1.configuration:根元素 1.1 properties:定义配置外在化 1.2 settings:一些全局性的配置 1.3 typeAliases:为 ...

  2. java 24 - 7 GUI之 创建多级菜单窗体

    需求: 创建多级菜单 步骤: A:创建窗体对象(并设置属性和布局) B:创建菜单栏 C:创建菜单和子菜单 D:逐步添加菜单(子菜单添加到菜单中,菜单添加到菜单栏中) E:窗体中设置菜单栏(菜单栏并不是 ...

  3. UITableViewCell 多选和全选(checkBoxCell)

    思路1 一.全选 1.创建可变数组,存储所有未选中状态(NO)的布尔值按钮,点击时改变其状态,并传入按钮的状态. 二.多选 1.创建Cell时,从数组中取出相应的值,传给cell,如果为YES,否则为 ...

  4. Oracle取TOP N条记录(转载)

    在SQL Server里面有top关键字可以很方便的取出前N条记录,但是Oracle里面却没有top的使用,类似实现取出前N条记录的简单方法如下: 方法1:利用ROW_NUMBER函数 取出前5条记录 ...

  5. HTML 学习笔记 CSS(选择器2)

    CSS 类选择器 类选择器允许以一种独立于文档元素的方式来指定样式 CSS 类选择器 类选择器允许以一种独立于文档元素的方式来指定样式 该选择器可以单独使用 也可以和其他元素结合使用 提示 只要适当的 ...

  6. cookie操作(jquery的cookie插件源码)

    cookie : function (key, value, options) { var days, time, result, decode; // A key and value were gi ...

  7. Centos6 修改max user processes limits

    ulimit:显示(或设置)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程序在运行过程中使用的系统资源不超过相应的软限制,任何 ...

  8. 自己的兼容IE系列的console.log

    console.log.apply 在某些浏览器下无法通过if进行验证,只能通过try catch进行验证: window.zlogs = function(){ try{ window.consol ...

  9. sql server利用开窗函数over() 进行分组统计

    这是一道常见的面试题,在实际项目中经常会用到. 需求:求出以产品类别为分组,各个分组里价格最高的产品信息. 实现过程如下: declare @t table( ProductID int, Produ ...

  10. Linux进程间通信之信号量

    春节过去了,真的过去一年了.在公司待了快一年了.2016希望自己变得越来越好. ps:上面那句话是年前写的,中间隔了那么久,自己也变懒了. 一.信号量 1,信号量本质是一个计数器,控制访问共享资源的最 ...