virtualenv

系统中的多个python混用会导致$PYTHONPATH混乱,或者各个工程对于package的版本要求不同等等情况。有一个简单的解决方案就是用virtualenv来隔离多个python,其本质只是实现隔离不同python中$PYTHONPATH的路径,当然也可以衍生到隔离多个$PATH

安装virtualenv

# Ubuntu/Linux 64-bit
$ sudo apt-get install python-pip python-dev python-virtualenv # Mac OS X
$ sudo easy_install pip
$ sudo pip install --upgrade virtualenv

Virtualenvwrapper

当有很多个虚拟环境时,我们可能会记不清有哪些虚拟环境,要搞清楚每个环境中有哪些package就更难了,因此这里推荐用Virtualenvwrapper来对虚拟环境进行管理。

配置Virtualenvwrapper

在安装Virtualenvwrapper之前用pip安装上virtualenv或用apt-get安装上python-virtualenv

$ sudo pip install virtualenvwrapper 

把下面几行加入~/.bashrc

export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python2.7 # 这句是为了防止环境变量$PATH中已有其它环境的python,需要换成自己需要的python路径

export WORKON_HOME=$HOME/.virtualenvs # 放所有虚拟环境的地方

source /usr/local/bin/virtualenvwrapper.sh

在终端输入source ~/.bashrc

新建Virtualenv

新建虚拟环境的指令由原来的virtualenv vpath更换为mkvirtualenv vname,默认把路径放到了$WORKON_HOME下,并且原来的--system-site-packages--no-site-packages等选项都还是可以用的。

mkvirtualenv VirtalenvName

建好之后默认就已经进入这个虚拟环境了(命令行前会有一个括号+环境名的提示),退出是deactivate

Virtualenvwrapper常用指令

mkvirtualenv 创建环境
workon 切换到环境
deactivate 注销当前环境
lsvirtualenv 列出所有环境
rmvirtualenv 删除环境
cpvirtualenv 复制环境
cdsitepackages cd到当前环境的site-packages目录
lssitepackages 列出当前环境中site-packages内容
setvirtualenvproject 绑定现存的项目和环境
wipeenv 清除环境内所有第三方包

使用虚拟环境virtualenv/Virtualenvwrapper隔离多个python的更多相关文章

  1. Python 虚拟环境[virtualenv/virtualenvwrapper]设置

      virtualenv virtualenv 是一个可以在同一计算机中隔离多个python版本的工具.有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python ...

  2. python虚拟环境 -- virtualenv , virtualenvwrapper

    virtualenv -- python虚拟沙盒 有人说:virtualenv.fabric 和 pip 是 pythoneer 的三大神器. 一.安装 pip install virtualenv ...

  3. 配置虚拟环境(virtualenv+virtualenvwrapper)

    安装virtualenv pip3 install virtualenv 安装virtualenvwrapper pip install virtualenvwrapper # Linux使用该条 p ...

  4. python虚拟环境--virtualenv和virtualenvwrapper

    python虚拟环境--virtualenv和virtualenvwrapper http://www.cnblogs.com/technologylife/p/6635631.html https: ...

  5. python 虚拟环境操作 virtualenv +virtualenvwrapper

    Window 下创建python的虚拟环境 下载工具 pip install virtualenv 创建虚拟环境目录 # 注意此命令创建的虚拟环境目录是在当前目录下 virtualenv testen ...

  6. Centos7 python虚拟环境virtualenv和virtualenvwrapper简单介绍

    我的系统版本是 [root@localhost ~]# cat /etc/os-release 我的Python版本是 [root@localhost ~]# python3 -V 关于如何安装Pyt ...

  7. Python 虚拟环境Virtualenv

    本人也是Python爱好者,众所周知,Python扩展多,每次为了测试,安装各种各样的扩展,这样导致本地的Python环境非常混乱,就有人想到搞个隔离环境  和 本地环境没有关系,随时可以删除这个隔离 ...

  8. [转载]windows下安装Python虚拟环境virtualenv,virtualenvwrapper-win

    1 前言 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列 虚拟的Py ...

  9. #Python学习#python虚拟环境——virtualenv

    前言 在Ubuntu系统中,系统一般会默认安装python2.x和3.x,像我近期买的阿里云ECS默认安装了2.7.2和3.5.2,所有pip安装的第三方包都会被放在默认的site-apckages目 ...

随机推荐

  1. interface21 - web - Log4jConfigListener(Log4j加载流程)

    前言 最近打算花点时间好好看看spring的源码,然而现在Spring的源码经过迭代的版本太多了,比较庞大,看起来比较累,所以准备从最初的版本(interface21)开始入手,仅用于学习,理解其设计 ...

  2. salesforce零基础学习(八十八)项目中的零碎知识点小总结(二)

    通过做项目以及群里面的一些大神的聊天,总结一下关于项目中的两个知识点,以后当做参考. 一. 在custom setting中配置集成接口信息后刷sandbox的问题 我们做项目时,经常会遇见和其他平台 ...

  3. Kafka项目实战-用户日志上报实时统计之编码实践

    1.概述 本课程的视频教程地址:<Kafka实战项目之编码实践>  该课程我以用户实时上报日志案例为基础,带着大家去完成各个KPI的编码工作,实现生产模块.消费模块,数据持久化,以及应用调 ...

  4. Eureka编程

    在一些场景下,我们需要监听eureka服务中心的一些状态,譬如某个微服务挂掉了,我们希望能监听到,并给管理员发送邮件通知或钉钉告警. 一.Eureka的监听事件,可以用来监控.告警EurekaInst ...

  5. git reset命令使用

    版本回退 当前有三个commit提交版本commit1commit2commit3Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本上一个版本是HEAD^,上上一个版本是HEAD^^ ...

  6. 深入JAVA注解(Annotation):自定义注解 (转)

    原文出自:http://blog.csdn.net/yjclsx/article/details/52101922 一.基础知识:元注解 要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义 ...

  7. 为springboot项目添加springboot-admin监控

    我们知道spring-boot-actuator暴露了大量统计和监控信息的端点,spring-boot-admin 就是为此提供的监控项目. 先来看看大概会提供什么样的功能 从图中可以看出,主要内容都 ...

  8. Maven教程(3)--Maven导入工程常见问题(编码、MavenArchiver、Lifecycle Mapping、maven install 没有反应)

    常见错误: 常见错误一:These projects must be migrated to correctly function in this version of MyEclipse 需要修改编 ...

  9. Spring的第三天AOP之xml版

    Spring的第三天AOP之xml版 ssm框架 spring  AOP介绍 AOP(Aspect Oriented Programming),面向切面编程.它出来的目的并不是去取代oop,而是对它的 ...

  10. Mybatis之逆向工程

    前面几篇基本把mybatis简单使用学习了下,今天学习下mybatis逆向工程,我们在开发中经常需要先设计数据库表结构或者先设计model,那就是能不能有工具可以只需在一边设计之后另一边自动生成呢?于 ...