Python多版本共存之pyenv

需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存。pyenv就是这样一个Python版本管理器。

安装pyenv

$ curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash

设置环境变量

$ echo '' >> ~/.bash_profile
$ echo '# pyenv' >> ~/.bash_profile
$ echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bash_profile 
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile 

$ source ~/.bash_profile

更新pyenv

$ pyenv update

安装Python

查看可安装版本

$ pyenv install --list

安装Python依赖包

$ sudo yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel

安装python版本

$ pyenv install -v 3.5.1

重构shim,利用pyenv安装完新version的py还是利用安装完新site package都需要执行这个操作

$ pyenv rehash

查看当前已安装的python版本

$ pyenv versions

设置全局的python版本

设置全局的当前Python版本,通过将版本号写入 ~/.pyenv/version 文件的方式。

$ pyenv global 3.5.1

确认当前python版本

$ pyenv version

使用python

  • 输入 python 即可使用新版本的python;
  • 系统自带的脚本会以 /usr/bin/python 的方式直接调用老版本的python,因而不会对系统脚本产生影响。
  • 使用 pip 安装第三方模块时会安装到 ~/.pyenv/versions/3.5.1 下,不会和系统模块发生冲突。
  • 使用 pip 安装模块后,可能需要执行 pyenv rehash 更新数据库。
原文地址:https://www.cnblogs.com/edward2013/p/5300402.html