【版本】
Python版本:2.7.x与3.x。
Python 3是一个不同于Python 2的语言。二者在语义、语法上,既存在细微的区别,又有着截然不同的一面。
截至今天,Python2.6/2.7是安装数量和使用度最高的版本。许多主流的Python库、框架、工具都没有做到100%兼容Python 3。因此,最稳妥的选择就是使用2.7.x)。务必只在你需要或者完全了解情况的前提下,才选择Python 3。现在,主流第三方库和框架对Python 3的支持度已经很高。根据py3readiness网站的统计,360个最受欢迎的Python包中已经有315个支持Python 3。具体的支持情况,可以查看这个网站。一定程度上说,Python 3已经成为新的主流。
查看版本:
python -V
输出:
Python 2.7.5
参考:https://blog.csdn.net/tpc1990519/article/details/77856399
输入以下命令查看目前系统使用的Python以及安装目录,接下来将要对该目录下的Python进行修改:
which python
输出:
/usr/bin/python
ll /usr/bin/python*
输出:
lrwxrwxrwx. 1 root root 7 May 30 05:52 /usr/bin/python -> python2 lrwxrwxrwx. 1 root root 9 May 30 05:52 /usr/bin/python2 -> python2.7 -rwxr-xr-x. 1 root root 7136 Nov 6 2016 /usr/bin/python2.7
【升级】
下载:https://www.python.org/ftp/python/
当前最新版本为2.7.15和3.7.1。
升级到Python 2.7.15:
wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz && tar vxzf Python-2.7.15.tgz && cd Python-2.7.15 && ./configure && make && make install
保留旧版本Python,因为先前的yum等命令依赖旧版本:
mv /usr/bin/python /usr/bin/python2.7.5
做好新版本连接:
ln -s /usr/local/bin/python2.7 /usr/bin/python
更新环境变量:
export PATH="/usr/local/bin:$PATH"
查看Python的版本:
python -V
输出:
Python 2.7.15
升级到Python 3.8.2:
原版本:Python 2.7.5
wget https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz --no-check-certificate && tar vxzf Python-3.8.2.tgz && cd Python-3.8.2 && ./configure --enable-optimizations && make && make install
输出:
... rm /usr/local/lib/python3.8/lib-dynload/_sysconfigdata__linux_x86_64-linux-gnu.py rm -r /usr/local/lib/python3.8/lib-dynload/__pycache__ ...
保留旧版本Python,因为先前的yum等命令依赖旧版本:
mv /usr/bin/python /usr/bin/python2.7.5
做好新版本连接:
ln -sv /usr/local/bin/python3.8 /usr/bin/python
更新环境变量:
export PATH="/usr/local/bin:$PATH"
查看Python的版本:
python -V
输出:
Python 3.8.2
修改yum的Python配置,以免无法使用
这是因为yum采用python作为命令解释器,这可以从/usr/bin/yum文件中第一行#!/usr/bin/python发现。
而python版本之间兼容性不太好,使得2.X版本与3.0版本之间存在语法不一致问题。
而CentOS系统将python升级到2.6或3.0后,出现语法解释错误。
Python2.x内升级:
方案:编辑 /usr/bin/yum
将 #!/usr/bin/python 改为 #!/usr/bin/python2.7.5
参考:https://blog.csdn.net/chaojiwanwan/article/details/71439066
升级到Python3.x,还需要操作:
1、编辑 /usr/libexec/urlgrabber-ext-down
将 #!/usr/bin/python 改为 #!/usr/bin/python2.7.5
2、编辑 /usr/bin/yum-config-manager
将 #!/usr/bin/python 改为 #!/usr/bin/python2.7.5
否则报错如下:
Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * elrepo: elrepo.mirror.angkasa.id * elrepo-kernel: elrepo.mirror.angkasa.id File "/usr/libexec/urlgrabber-ext-down", line 28 except OSError, e: ^ SyntaxError: invalid syntax Exiting on user cancel
【介绍】
教程:http://www.runoob.com/python3/python3-tutorial.html
教程:https://www.liaoxuefeng.com/
教程:http://www.iplaypy.com/
参考:https://blog.csdn.net/xiaofei0859/article/details/51969187
参考:https://danieleriksson.net/2017/02/08/how-to-install-latest-python-on-centos/ 多版本
参考:https://www.cnblogs.com/lihanx/p/5947178.html
参考:https://www.jianshu.com/p/dce4a576c261
参考:https://blog.csdn.net/tpc1990519/article/details/77856399
参考:https://blog.csdn.net/redmoon729/article/details/53258803