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