一般情况下,系统自带的python 版本都是2.7。python2.7是2系列的最后一个版本,已经停止开发,不久将会终止支持。可以通过以下命令检查系统安装的python 是什么版本,例如以下版本是 python2.7
[root@fanmingming14 opt]# python -V |
方法/步骤
以下是简单快捷的升级到python3 的步骤:
1,到python 版本库 http://www.python.org/ftp/python 看需要下载的版本,然后下载,例如要下载python3.6.5。
[root@fanmingming14 opt]# wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
--2018-05-22 15:25:18-- https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
正在解析主机 www.python.org (www.python.org)... 151.101.72.223, 2a04:4e42:36::223
正在连接 www.python.org (www.python.org)|151.101.72.223|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:22994617 (22M) [application/octet-stream]
正在保存至: “Python-3.6.5.tgz”
100%[======================================>] 22,994,617 5.82MB/s 用时 4.8s
2018-05-22 15:25:23 (4.61 MB/s) - 已保存 “Python-3.6.5.tgz” [22994617/22994617])
[root@fanmingming14 opt]# ls
mysql57-community-release-el7-11.noarch.rpm
Python-3.6.5.tgz
tidb-enterprise-tools-latest-linux-amd64
tidb-enterprise-tools-latest-linux-amd64.sha256
tidb-enterprise-tools-latest-linux-amd64.tar.gz
[root@fanmingming14 opt]#
find / -name Python-3.6.5.tgz一般是下载到当前目录。如果不知道下载到了哪里,可以用以下命令找到下载到文件:
2,这里为了保留旧的2.7版本,可以另为新版本新建一个安装路径:
mkdir /usr/local/python3
3,回到刚下载的 Python-3.6.1.tgz 目录下,解压该文件:
tar -xzvf Python-3.6.1.tgz
然后cd 进入解压后的文件夹 Python-3.6.1,编译和安装,依次执行以下命令:
./configure --prefix=/usr/local/python3
make
make install
备注:
在CentOS以及其他的Linux系统中遇到安装包安装错误的原因,大多数都是因为缺少依赖包导致的,所以对于错误:zipimport.ZipImportError: can’t decompress data,是因为缺少zlib 的相关工具包导致的,知道了问题所在,那么我们只需要安装相关依赖包即可,
打开终端,输入一下命令安装zlib相关依赖包:
yum -y install zlib*
make && make install
重新编译安装即可
4,使新版本的python3.6 生效,首先备份旧的 python链接:
mv /usr/bin/python /usr/bin/python2.7_old
(系统默认的版本就是/usr/bin/python)
然后为刚安装的python3 建立新的链接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python
然后再输入命令 python -V 就可以看到新安装的版本了。
[root@fanmingming14 Python-3.6.5]# python -V
Python 3.6.5
以上方法虽然能正常安装新版本,但是它会带来别的问题,比如yum不能正常使用了,
此时可以修改/usr/bin/yum 的第一行为备份的旧的python版本:
#!/usr/bin/python2.7_old
备注:第4-5步可以用以下代替:
系统默认的版本就是/usr/bin/python,是原来的python2
然后为刚安装的python3 建立新的链接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
这样,如果使用Python或者Python2就是用Python2;
如果使用Python3就是用Python3
[root@fanmingming14 python]# python2
Python 2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
[8]+ 已停止 python2
[root@fanmingming14 python]# python3
Python 3.6.5 (default, May 22 2018, 16:09:07)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> ^Z
[9]+ 已停止 python3
[root@fanmingming14 python]# python -V
Python 2.7.5
[root@fanmingming14 python]# python3 -V
Python 3.6.5
[root@fanmingming14 python]#