在CentOS上安装Python是一个常见的需求,因为Python是一种广泛使用的编程语言,适用于各种任务和项目,以下是关于如何在CentOS上安装Python的详细步骤:
一、安装前的准备工作
1、更新系统:

在开始安装之前,建议先更新你的CentOS系统,以确保所有的包都是最新的,你可以使用以下命令来更新系统:
- sudo yum update y
2、检查当前Python版本:
CentOS通常自带Python 2.x版本,但你可以通过以下命令来检查当前安装的Python版本:
- python version
输出将显示类似Python 2.7.5
的版本号。
二、安装Python 3
方法一:通过源码编译安装
这是一种比较灵活但稍微复杂的安装方式,它允许你安装特定版本的Python,并且可以自定义安装路径。

1、下载Python源码:
访问Python官方网站(https://www.python.org/)下载你需要的Python版本源码包,如果你要安装Python 3.11.0,可以使用以下命令下载:
- wget https://www.python.org/ftp/python/3.11.0/Python3.11.0.tgz
2、解压源码包:
下载完成后,解压源码包:
- tar xzf Python3.11.0.tgz
3、安装必要的依赖:
在编译Python之前,你需要安装一些必要的依赖包,如gCC、zlib、openssl等,你可以使用以下命令来安装这些依赖:
- sudo yum install gcc zlib zlibdevel libffi libffidevel openssldevel readlinedevel
4、配置编译环境:
为了解决方向键、删除键乱码问题,可以提前安装readlinedevel:
- sudo yum install readlinedevel
设置编译标志以使用最新的openssl库:
- export CFLAGS=$(pkgconfig cflags openssl)
- export LDFLAGS=$(pkgconfig libs openssl)
5、编译并安装Python:
进入解压后的Python源码目录,然后执行以下命令进行编译和安装:
- cd Python3.11.0
- ./configure prefix=/usr/local/python3 withssl
- make
- sudo make install
这里prefix=/usr/local/python3
指定了Python的安装路径为/usr/local/python3
,你可以根据需要修改这个路径。
6、创建软链接:
为了方便使用,你可以创建指向Python 3的软链接:
- sudo ln s /usr/local/python3/bin/python3 /usr/bin/python3
- sudo ln s /usr/local/python3/bin/pip3 /usr/bin/pip3
7、验证安装:
你可以通过以下命令来验证Python 3是否安装成功:
- python3 version
- pip3 V
方法二:使用EPEL仓库安装
这是一种更简单的安装方式,适用于CentOS 7及更高版本,EPEL(Extra Packages for Enterprise Linux)仓库提供了许多额外的软件包,包括Python 3。
1、安装EPEL仓库:
你需要安装EPEL仓库:
- sudo yum install epelrelease
2、安装Python 3:
你可以使用yum命令来安装Python 3:
- sudo yum install python36
注意:这里的python36
指的是Python 3.6版本,如果你需要安装其他版本的Python,请相应地更改命令中的版本号。
3、验证安装:
你可以通过以下命令来验证Python 3是否安装成功:
- python3 version
三、常见问题与解决方案
1、报错“Could not build the ssl module”:
这个错误通常是因为你没有安装openssl开发包,解决方法是安装openssldevel:
- sudo yum install openssldevel
2、报错“No package openssl11 available”:
这个错误通常是因为你没有启用EPEL仓库,解决方法是安装EPEL仓库:
- sudo yum install epelrelease
3、模块未找到错误(如ModuleNotFoundError: No module named '_sqlite3'):
这个错误通常是因为你没有安装sqlite开发包,解决方法是安装sqlitedevel:
- sudo yum install sqlitedevel
四、相关问答FAQs
Q1:如何在CentOS上卸载Python?
A1:如果你通过源码编译安装了Python,并且安装在了自定义路径(如/usr/local/python3
),你可以通过删除该目录来卸载Python:
- sudo rm rf /usr/local/python3
如果你使用的是EPEL仓库或其他包管理器安装的Python,你可以使用相应的包管理器命令来卸载,如:
- sudo yum remove python36
Q2:如何在CentOS上切换Python版本?
A2:在CentOS上,你可以使用alternatives
工具来管理不同版本的Python,如果你想将Python 3设置为默认的Python版本,可以使用以下命令:
- sudo alternatives set python /usr/bin/python3
如果你想切换回Python 2,可以使用:
- sudo alternatives set python /usr/bin/python2