Mac多Python版本共存,多个独立Python开发环境切换。

本文实现:Python多版本共存,多个独立Python环境切换。本文适用mac,类UNIX系统安装配置过程类似。

一、安装配置pyenv

经常遇到这样的情况:

  • 系统自带的Python是2.x,自己需要Python 3.x,测试尝鲜;
  • 系统是2.6.x,开发环境是2.7.x
  • 由于Mac机器系统保护的原因,默认的Python中无法对PIP一些包升级,需要组建新的Python环境。
  • 此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存。pyenv就是这样一个Python版本管理器。

1、安装pyenv

2、根据提示需要添加

这里注意了,如果使用的zsh,务必不要在zshrc配置里面的插件开启pyenv。会导致终端无限循环退出,只需要在你的zshrc结尾处追加上面两行就行了。笔者亲测。

3、查看当前激活的是那个版本的Python

4、查看已经安装了那些版本的Python

5、安装指定版本的Python

6、切换和使用指定的版本Python版本有3种方法:

特别建议:

优先级关系:shell——local——global

二、利用virtualenv和Virtaulenvwrapper管理虚拟Python环境

virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:

  1. 在没有权限的情况下安装新套件
  2. 不同应用可以使用不同的套件版本
  3. 套件升级不影响其他应用

Virtaulenvwrapper是virtualenv的扩展包,用于更方便管理虚拟环境,它可以做:

  1. 将所有虚拟环境整合在一个目录下
  2. 管理(新增,删除,复制)虚拟环境
  3. 切换虚拟环境

1、安装和使用方法

此时还不能使用virtualenvwrapper,默认virtualenvwrapper安装在/usr/local/bin下面,实际上你需要运行virtualenvwrapper.sh文件才行,先别急,打开这个文件看看,里面有安装步骤,我们照着操作把环境设置好。

如果你使用的bash或者zsh

2、创建虚拟环境例如:

默认情况下,虚拟环境会依赖系统环境中的site packages,就是说系统中已经安装好的第三方package也会安装在虚拟环境中,如果不想依赖这些package,那么可以加上参数 –no-site-packages建立虚拟环境

例如:

3、查看创建的虚拟环境:

4、启动某虚拟环境:

5、删除某个虚拟环境:

6、删除某个虚拟环境需要先退出这个环境

三、融合 pyenv、virtualenv、Virtaulenvwrapper 管理Python版本和虚拟环境

如何对Python2.7.10和Python3.5.0版本分别创建虚拟环境?

有这三个工具其实非常简单,主要是确保环境切换成功后在创建虚拟环境。

3.5.0的虚拟环境创建也是一样,因此验证2.7.10和3.5.0的虚拟环境

至今没找到切换Python版本的时候要加载 source .zshrc。经过无数次试验,结果是务必这么干,不知道为什么。

 

参考:
http://www.virtualenv.org/en/latest/
http://stackoverflow.com/questions/11372221/virtualenvwrapper-not-found
http://www.openfoundry.org/tw/tech-column/8516-pythons-virtual-environment-and-multi-version-programming-tools-virtualenv-and-pythonbrew
http://virtualenvwrapper.readthedocs.org/en/latest/index.html

::...
免责声明:
当前网页内容, 由 大妈 ZoomQuiet 使用工具: ScrapBook :: Firefox Extension 人工从互联网中收集并分享;
内容版权归原作者所有;
本人对内容的有效性/合法性不承担任何强制性责任.
若有不妥, 欢迎评注提醒:

或是邮件反馈可也:
askdama[AT]googlegroups.com


订阅 substack 体验古早写作:


点击注册~> 获得 100$ 体验券: DigitalOcean Referral Badge

关注公众号, 持续获得相关各种嗯哼:
zoomquiet


自怼圈/年度番新

DU22.4
关于 ~ DebugUself with DAMA ;-)
粤ICP备18025058号-1
公安备案号: 44049002000656 ...::