在CentOS7下同时安装、使用Python2.x和Python3.x

时间:2022-12-29 13:53:01

一般情况下,各类Linux操作系统是会默认安装Python2.x的,在最新的CentOS7.4版本中,发现系统默认只安装了Python2.x,而且是很多系统组件的依赖包,不推荐卸载。目前Python3.x逐渐流行,相信在不久的将来将取代Python2.x。如何在我们的系统内同时安装、使用Python2.x与Python3.x呢?
由于Python2.x系统默认已经安装,所以我们只需要下载Python3.x版本进行设置、安装即可。
下载Python3.x,下载地址可以去Python官网上寻找。
[root@Geeklp-Python Python-3.6.3]# curl -O https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz
解压已经下载完成的源码包:
[root@Geeklp-Python Python-3.6.3]# tar -xvJf Python-3.6.3.tar.xz
如果你的系统没有安装gcc的话,你还需要先完成gcc的安装:
[root@Geeklp-Python Python-3.6.3]# yum -y install gcc
把zlib(一般情况下zlib已经安装)及zlib-devel也安装上,免得之后编译、安装过程报错:
[root@Geeklp-Python Python-3.6.3]# yum -y install zlib zlib-devel
后来在使用pip时发现有报错:
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
发现还需要安装openssl-devel,安装openssl-devel时,zlib-devel会作为依赖包被安装。所以安装了openssl-devel就不需要安装其他的了!
直接安装openssl-devel:
[root@Geeklp-Python Python-3.6.3]# yum -y install openssl-devel
当前的工作目录为:/usr/local/share/Python-3.6.3,依次执行:
[root@Geeklp-Python Python-3.6.3]# ./configure --prefix=/usr/local/share/applications/Python3.6.3
[root@Geeklp-Python Python-3.6.3]# make&&make install
在CentOS7下同时安装、使用Python2.x和Python3.x在CentOS7下同时安装、使用Python2.x和Python3.x
从上图我们可以看到,本次安装同时还安装了pip(版本为9.0.1)
新建软连接:
[root@Geeklp-Python Python-3.6.3]# ln -s /usr/local/share/applications/Python3.6.3/bin/python3.6 /bin/python3
[root@Geeklp-Python Python-3.6.3]# ln -s /usr/local/share/applications/Python3.6.3/bin/pip3 /bin/pip3
输入python3,如果出现以下内容说明已经安装成功!
在CentOS7下同时安装、使用Python2.x和Python3.x在CentOS7下同时安装、使用Python2.x和Python3.x
一般情况下,不建议修改原来的python2.x的配置信息。写python2.x脚本时申明解释器时请使用:#!/bin/python。写python3.x脚本时申明解释器是请使用:#!/bin/python3,这样的话通过./即可运行python脚本,很方便。如果不申明解释器,则运行时分别使用python或python3,后面跟脚本的全名。使用pip的时候为了便宜区分,键入pip3来以示区别。