参考:
https://www.jianshu.com/p/228cd025a368
https://www.jianshu.com/p/8b13815c97c9
https://blog.csdn.net/jorg_zhao/article/details/79493519(离线安装)
https://www.jianshu.com/p/cea9259d87df(版本设置)
一、安装pyenv 支持库
在 CentOS/RHEL/Fedora 下:
sudo yum install readline readline-devel readline-static
sudo yum install openssl openssl-devel openssl-static
sudo yum install sqlite-devel
sudo yum install bzip2-devel bzip2-libs
在 Ubuntu下:
sudo apt-get update
sudo apt-get install make build-essential libssl-dev zlib1g-dev
sudo apt-get install libbz2-dev libreadline-dev libsqlite3-dev wget curl
sudo apt-get install llvm libncurses5-dev libncursesw5-dev
二、安装pyenv
执行下列命令即可安装成功(也可以不选择 $HOME 这个目录下下载安装)
git clone git://github.com/yyuu/pyenv.git .pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
exec $SHELL -l
三、使用pyenv 安装python多版本
检查pyenv 安装的版本(下面显示只有系统自带的版本)
root@pts/3 $ pyenv versions
* system (set by /root/.pyenv/version)
使用 pyenv install --list 查看可安装的python版本
选择3.6.0 版本进行安装
pyenv install 3.6.0 (安装版本)
pyenv rehash (刷新)
pyenv global 3.6.0 (切换版本)
pyenv versions (查看已安装的版本,带*为当前使用的版本)
安装时可能会出现https无法访问的问题(curl: (35) SSL connect error),这里不提供解决办法,而是绕过去进行离线安装。
找到前面下载的 .pyenv目录,查看是否有cache文件夹,如果没有则新建。
下载离线安装包再进行安装:
cd cache
wget http://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
pyenv install 3.6.0
pyenv rehash
pyenv versions
四、pyenv 版本设置常用命令:
设置全局python版本如3.6.0
$ pyenv global 3.6.0
设置目录级python版本如3.6.0,这里目录下的python版本指定为3.6.0,包括子目录(通过将版本号写入当前目录下的.python-version 文件的方式。)
cd + 目录路径
$ pyenv local 3.6.0
为当前shell会话设置python版本如3.6.0
$ pyenv shell 3.6.0
查看当前设定版本
$ pyenv versions
* system (set by /home/work/bin/.pyenv/version)
3.6.0
注意:JAVA调用python脚本/命令时,如果想使用python3执行,需要修改的是JAVA中 ProcessBuilder 、Runtime 的python 的路径信息,指向python3的启动脚本即可,与pyenv无关。