MacOS下Python的多版本管理(pyenv)
与windows下设置绝对路径不同,pyenv使用了一种更优雅的方式来管理Python的版本。pyenv通过在$PATH的最前面插入一个垫片路径(shims),例如:~/.pyenv/shims:/usr/local/bin:/usr/bin:/bin 。当查找Python的可执行文件时,会自动跳转到这个shims处,从而实现对Python的多版本管理。下图是官网给出的原理:

安装
pyenv的github地址 github.com/yyuu/pyenv ,在这个页面中提供了其完整的安装步骤,以及全部的命令。
其步骤大致分为以下几步:
1.将pyenv检出
$ git clone git://github.com/yyuu/pyenv.git .pyenv
2.添加环境变量
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
这里需要注意的是不同系统环境下环境变量配置文件并不相同,mac下为bash_profile,而在其他Linux版本中不尽相同。
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
向shell添加pyenv init已实现命令的自动补全。
3.重启shell
$ exec $SHELL
使用
根据git上给出的文档,pyenv的命令只有11条:

使用频率较大的几条:
1.pyenv install
$ pyenv install -v 3.4.0
使用pyton-build安装一个python版本。-v参数显示安装进度,在网络环境不佳的状态下,建议跟上-v参数。
git上给出的文档如下

2.pyenv uninstall
$ pyenv uninstall 3.4.0
对应卸载一个Python版本
3.pyenv versions
$ pyenv versions
查看当前Python可以检测到的所有版本,“*”表示该Python版本当前处于激活状态。

4.pyenv version
$ pyenv version
查看当前处于激活状态的Python版本。

5.pyenv rehash
$ pyenv rehash
为目录下的可执行文件创建shims垫片,所以当安装或卸载python版本以及通过pip等增加或删除了可执行文件包后,都需要执行此命令。
6.pyenv global/pyenv local/pyenv shell
$ pyenv global 3.4.0 #全局 $ pyenv local 3.4.0 #本地 $ pyenv shell pypy-3.4.0 #shell
$ pyenv shell --unset
设置python的当前版本,设置后该版本将处于激活状态,优先级顺序为shell>local>globl。

转载请注明出处 huhuhuo的博客园
地址:http://www.cnblogs.com/linhan/p/4722480.html
MacOS下Python的多版本管理(pyenv)的更多相关文章
- 在MacOS下Python安装lxml报错xmlversion.h not found 报错的解决方案
最近在看一个自动化测试框架的问题,需要用到Lxml库,下载lxml总是报错. 1,使用pip安装lxml pip install lxml 2,然后报错了,报错内容是: In file include ...
- centos下python多版本管理(pyenv+python+virtualenv+ipython)
pyenv是个多版本python管理器,可以同时管理多个python版本共存,如pypy,miniconde等等 1 环境准备 安装相关软件和pyenv1.1 安装相关软件yum install -y ...
- 转 Python多版本管理-pyenv
#######for linux https://www.cnblogs.com/saneri/p/7642316.html 经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python ...
- MacOS下打包Python应用
在MacOS下开发的Python应用,不是Web Application,开发好以后,如何给用户使用呢?用户的操作系统也是MacOS 使用py2app打包 一.软件环境 ...
- python版本管理--pyenv
python版本环境管理 下载依赖 yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readli ...
- python 多版本管理pyenv和virtualenv虚拟开发环境
pyenv是管理多个python版本的工具. 1.pyenv的安装 git clone https://github.com/yyuu/pyenv.git ~/.pyenv 2.将PYENV_ROOT ...
- MacOS下,Python2和Python3完美兼容使用(转)
问题阐述: MacOS默认Python版本是2.7.10,随着Python3的进一步占有市场,Python2.7也将在2020年结束维护,所以在同一台电脑上安装多个Python版本势在必行. 一.py ...
- ubuntu 下python安装及hello world
//@desn:ubuntu 下python安装及hello world //@desn:码字不宜,转载请注明出处 //@author:张慧源 <turing_zhy@163.com> ...
- Python开发环境之pyenv环境搭建
首先到Github上下载Pyenv相应的一键安装脚本, 安装完毕,设置环境变量,设置环境变量,可以添加到个人家目录的.bashrc或.bash_profile及系统的全局的/etc/profile, ...
随机推荐
- jquery_DOM笔记4
jQuery遍历函数: add()添加,可以是样式,字符串,元素,文本,js对象 andself() 指向匹配元素本身 chilidren() 匹配元素的所有子元素的匹配元素 closest() 从本 ...
- web自动化工具-Browsersync
web自动化工具-Browsersync browser-sync才是神器中的神器,和livereload一样支持监听所有文件.可是和livereload简单粗暴的F5刷新相比,browsersync ...
- 设计模式--外观模式Facade(结构型)
一.外观模式 外观模式提供了一个统一的接口,用来访问子系统中的一群接口.外观模式定义了一个高层接口,让子系统更容易被使用. 二.UML图 三.例子 举个编译器的例子,假设编译一个程序需要经过四个步骤: ...
- cocos2d-js 学习笔记 --安装调试(2)
对于初学者安装cocos2d-js的环境并没有教程中说的那么简单,至少笔者是这么认为的 第一步,下载cocos2d-js的SDK,(先别着急运行) 第二步,安装Cocos2d console ,(Ma ...
- JS Date.parse() 函数详解
Date.parse()函数用于分析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间相差的毫秒数. 该函数属于Date对象,所有主流浏览器均支持该函数. 语法 Date.pa ...
- 面向过程(POP)、面向对象(OOP)、面向接口(IOP)、面向切面(AOP)
面向过程:典型的是C/C++的结构体,结构体里只有变量,没有处理变量的方法,需要专门编写处理变量的方法. 面向对象:ArrayList<Integer> list=new ArrayLis ...
- 2015 史考特(Scottrade)开户指南 + 招商银行香港一卡通汇款【图文教程】
最近刚开始炒美股.总的来说分为两步:一是开户,即选一个美股券商开设股票交易账户:二是汇款注资,把人民币换成美元转账到股票交易账户上.上述第一点其实相对简单,美股券商大多都对美国以外的外国人开放申请,且 ...
- 21. Merge Two Sorted Lists —— Python
题目: Merge two sorted linked lists and return it as a new list. The new list should be made by splici ...
- Eclipse 一些小知识
快速查找未完成事项 eg: // TODO 通过模板格式化代码 Window --> Preferences --> Java --> Editor --> Template ...
- Ubuntu架设FTP
1.安装vsftpd >sudo apt-get install vsftpd 2.安装好ftp后默认是会自动创建ftp用户的,然后我们设置ftp用户的密码 >sudo passwd ft ...