centos7默认安装的python版本为2.7,为了使用3的库,手动更新centos的python版本。
1、验证本机安装的python版本
python -V
cd /usr/bin/
ll python*
从结果可以看出,python命令连接到的是python2,python2连接的是python2.7。所以,我们的安装思路就是装一个python3,然后将python软连接至python3.
2、手动安装
打开 https://www.python.org/ftp/python/ 找一个合适的版本,我选择的是非最新的3.6.7.
wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tgz
解压
tar -zxfv Python-3.6.7.tgz
进入到目录,手动安装
./configure --prefix=/usr/local/python-3.6.7
指定安装目录为/usr/local/python-3.6.7
make
make install
安装过程中可能出现错误
zipimport.ZipImportError: can’t decompress data; zlib not available
说明安装缺少依赖,我们直接用yum安装之:
yum -y install zlib*
再次运行 make install 安装成功
3、修改软连接
扫描二维码关注公众号,回复:
4448925 查看本文章
rm -f /usr/bin/python
ln -s /usr/local/python-3.6.7/bin/python3 /usr/bin/python
验证
说明两个版本都可用。
rm /usr/bin/pip
ln -s /usr/local/python-3.6.7/bin/pip3 /usr/bin/pip
将pip也更新为pip3,同样pip2仍然可用。
更新后发现yum无法使用
经查,发现yum使用python2执行的,修改yum源码。
vim /usr/bin/yum
将首行
#!/usr/bin/python
改为
#!/usr/bin/python2
继续修改错误文件
vim /usr/libexec/urlgrabber-ext-down
把 python 改为 python2
修改后yum运行正常。