当前位置: 首页
编程语言
CentOS系统如何将默认Python版本从2升级到3

CentOS系统如何将默认Python版本从2升级到3

热心网友 时间:2026-05-06
转载

一、了解现状:CentOS中的Python环境 在CentOS系统中,如果已经安装了yum,那么系统中通常已经存在某个版本的Python 2。在命令行中直接输入python命令,你大概率会看到Python 2的环境被唤醒: [root@instance-hrnebyqu src] python P

一、了解现状:CentOS中的Python环境

在CentOS系统中,如果已经安装了yum,那么系统中通常已经存在某个版本的Python 2。在命令行中直接输入python命令,你大概率会看到Python 2的环境被唤醒:

[root@instance-hrnebyqu src]# python
Python 2.7.5 (default, Apr 11 2018, 07:36:10)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

我们的目标很明确:将python这个shell命令指向Python 3的版本。实现路径通常分为两步:先安装Python 3,然后将python命令链接到新安装的Python 3上。

配置环境与别名

假设Python 3的安装路径已经添加到了~/.bash_profile文件的PATH环境变量中,那么通常不需要再额外修改环境变量。如果尚未添加,则需要执行以下操作:

vim ~/.bash_profile

将Python 3的可执行文件路径(例如/usr/local/python3/bin)添加到PATH中,然后重新加载这个配置文件:

source ~/.bash_profile

接下来,修改~/.bashrc文件来设置命令别名(alias),这是关键的一步:

vim ~/.bashrc

在文件中添加类似下面的几行,明确指定python2python3的路径,并将python命令指向python3

alias python2=/usr/bin/python
alias python3=/usr/local/python3/bin/python3
alias python=/usr/local/python3/bin/python3

这样一来,在命令行中再次输入python,启动的就是Python 3的环境了:

[root@instance-hrnebyqu src]# python
Python 3.6.6 (default, Jul  4 2019, 12:00:29)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux
Type "help", "copyright", "credits" or "license" for more information.

一个至关重要的注意事项

这里必须划重点:在CentOS系统中,用于软件包管理的yum命令,其底层是依赖Python作为解释器的,并且默认使用的是Python 2。如果粗暴地将全局python命令切换到Python 3,很可能会因为Python 2与Python 3之间的语法兼容性问题,导致yum命令无法正常工作。这是操作前必须警惕的风险点。

如何排查与修复yum问题

yum的主程序文件位于:

/usr/bin/yum

我们可以查看一下这个文件的内容:

#!/usr/bin/python

import sys
try:
    import yum
except ImportError:
    print >> sys.stderr, """\
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:

%s

Please install a package which provides this module, or
verify that the module is installed correctly.

It's possible that the above module doesn't match the
current version of Python, which is:

%s

If you cannot solve this problem yourself, please go to
the yum faq at:
http://yum.baseurl.org/wiki/Faq""" % (sys.exc_value, sys.version)
    sys.exit(1)

sys.path.insert(0, '/usr/share/yum-cli')
try:
    import yummain
    yummain.user_main(sys.argv[1:], exit_code=True)
except KeyboardInterrupt, e:

注意看文件的第一行:#!/usr/bin/python。这行“shebang”指明了执行此脚本的解释器路径。如果因为修改了全局python的指向而导致yum报错,最直接的修复方法就是将这一行修改为系统中Python 2解释器的具体路径,例如#!/usr/bin/python2.7。这样就能确保yum继续在Python 2环境下稳定运行,而不受全局别名设置的影响。

来源:https://blog.csdn.net/weixin_39996035/article/details/110884154

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
AWS RDS 数据库配置入门与基础操作指南

AWS RDS 数据库配置入门与基础操作指南

本文介绍了AWSRDS的基本概念与核心价值,即提供托管式关系数据库服务,简化运维。详细阐述了创建RDS实例的关键配置步骤,包括引擎选择、实例规格、存储与网络设置。最后,指导读者如何通过多种方式安全连接至数据库实例,并开始进行数据操作,为后续应用开发奠定基础。

时间:2026-07-10 06:41
PHP MVC中AJAX请求无法调用控制器方法的原因与解决方案

PHP MVC中AJAX请求无法调用控制器方法的原因与解决方案

PHPMVC中AJAX请求返回整页HTML的常见原因是控制器方法未正确输出响应或未终止执行,导致框架渲染视图。解决方法是在控制器中设置JSON响应头、输出数据后调用exit()明确终止,同时前端使用小写url和dataType: "json "。

时间:2026-07-10 06:40
Go语言手动构造rsa.PublicKey:正确初始化大整数模数N完整指南

Go语言手动构造rsa.PublicKey:正确初始化大整数模数N完整指南

手动构造RSA公钥时,模数N为*big Int类型,不能直接使用超长十进制字面量,需通过SetString或UnmarshalText方法解析字符串。公钥指数E可直接赋值,推荐65537。生产环境应使用rsa GenerateKey生成密钥对,避免手动构造引发的安全和格式错误。

时间:2026-07-10 06:39
Go语言实现HTTP定时轮询监控多URL响应时间与状态检测

Go语言实现HTTP定时轮询监控多URL响应时间与状态检测

使用Go语言实现HTTP定时轮询监控,通过按行分割与Tab解析URL列表,避免闭包陷阱和nil指针,每个URL启动独立ticker安全并发请求,并配置超时控制与资源关闭,确保响应时间与状态码准确检测。

时间:2026-07-10 06:39
Tkinter中Label标签在主循环动态更新的正确方法

Tkinter中Label标签在主循环动态更新的正确方法

在Tkinter中正确动态更新标签的方法:将标签组件的textvariable参数绑定到一个StringVar变量,然后通过调用该变量的 set()方法更新其值,界面会自动刷新。这样避免直接修改text属性或调用update()。此做法实现数据与界面的解耦,代码更简洁,响应更及时,避免手动同步的闪烁,推荐做法。

时间:2026-07-10 06:39
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 热门数据榜