CentOS 7 的 Python2 升级成 Python 3.9.17

安装Python3.9.17

官网下载地址:https://www.python.org/downlo...

CentOS 7 的 Python2 升级成 Python 3.9.17_第1张图片

 

这里选择下载python 3.9.17。

# 下载
wget https://www.python.org/ftp/python/3.9.17/Python-3.9.17.tgz
# 解压
tar -zxf Python-3.9.17.tgz
# 安装依赖包
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc  libffi-devel
# 进入python目录
cd Python-3.9.17
# 编译
./configure --prefix=/usr/local/python3.11
#安装
make && make install

关于Python3.7 以上的版本,需要多安装一个依赖包:

yum install -y libffi-devel

否则会出现ModuleNotFoundError: No module named '_ctypes'的报错。

在make install后执行echo $?,为0表示没有出错。如果没有报错,在/usr/local会生成python3.7目录。

然后将系统默认的python2备份

mv /usr/bin/python /usr/bin/python.bak

创建新的软连接

ln -s /usr/local/python3.9/bin/python3.9 /usr/bin/python
ln -s /usr/local/python3.9/bin/pip3 /usr/bin/pip

查看版本

[root@moli-linux03 src]# python -V
Python 3.9.17     

升级完成了。

更改yum配置

因为yum需要使用python2,将/usr/bin/python改为python3后,yum就不能正常运行了,因此需要更改一下yum的配置。

vi /usr/bin/yum
把#! /usr/bin/python 修改为#! /usr/bin/python2

vi /usr/libexec/urlgrabber-ext-down
把#! /usr/bin/python 修改为#! /usr/bin/python2

编辑这两个文件,将文件头的#!/usr/bin/python改为#!/usr/bin/python2即可。

相关方案:

python3.11安装, 解决pip is configured with locations that require TLS/SSL问题_赛博朋克2078的博客-CSDN博客

你可能感兴趣的:(python,centos,linux)