Linux如何做到Python多个版本共存
CentOS 6系统默认安装了Python2.6版本。有时候我们需要Python3时该怎么办?
本文演示利用pyenv来控制我们的Python版本。
开源地址
https://github.com/pyenv/pyenv
安装 pyenv
建议使用: https://github.com/pyenv/pyenv-installer 来直接安装。
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
安装完成后,根据提示将如下语句加入到 ~/.bashrc
中:
export PATH="/root/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
安装 Python
查看可安装的版本
pyenv install --list
该命令会列出可以用 pyenv 安装的 Python 版本。列表很长,仅列举其中几个:
2.7.8 # Python 2 最新版本 3.6.1 # Python 3 最新版本 3.7-dev # Python 3 开发版本 anaconda2-4.1.0 # 支持 Python 2.6 和 2.7 anaconda3-4.1.0 # 支持 Python 3.3 和 3.4
其中 2.7.8 和 3.6.1 这种只有版本号的是 Python 官方版本,其他的形如 anaconda2-4.1.0
这种既有名称又有版本后的属于 “衍生版” 或发行版。
安装 Python 的依赖包
在编译 Python 过程中会依赖一些其他库文件,因而需要首先安装这些库文件,已知的一些需要预先安装的库如下。
yum install -y readline readline-devel readline-static yum install -y openssl openssl-devel openssl-static yum install -y sqlite-devel yum install -y bzip2-devel bzip2-libs
安装指定版本
用户可以使用 pyenv install
安装指定版本的 python。
我们安装一个最新的python 试一试。
pyenv install 3.6.1 #-> Downloading Python-3.6.1.tar.xz... #-> -> https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz #-> Installing Python-3.6.1... #-> Installed Python-3.6.1 to /root/.pyenv/versions/3.6.1
安装过程中,若出现编译错误,通常是由于依赖包未满足,需要在安装依赖包后重新执行该命令。
更新数据库
在安装 Python 或者其他带有可执行文件的模块之后,需要对数据库进行更新:
pyenv rehash
查看当前已安装版本
pyenv versions #-> * system (set by /root/.pyenv/version) #-> 3.6.1
其中的星号表示当前正在使用的是系统自带的 python。
设置全局的版本
pyenv global 3.6.1 pyenv versions #-> system #-> * 3.6.1 (set by /root/.pyenv/version)
python -V #-> Python 3.6.1
使用下面的命令即可切换回系统自带的版本
pyenv global system
也可以使用 pyenv local
或 pyenv shell
临时改变 python 版本。
pyenv 其他功能
pyenv uninstall
卸载某个版本pyenv update
更新 pyenv 及其插件
参考文章:http://seisman.info/python-pyenv.html
阅读剩余
版权声明:
作者:buak001
链接:https://www.51zylm.com/?p=103
文章版权归作者所有,未经允许请勿转载。
THE END