page contents

Linux 中升级或切换 Python 版本?这份实操指南请收好

Python 是很多开发者日常工作离不开的工具。但随着项目需求的变化,我们常常会遇到需要升级 Python 版本,或者在不同版本之间切换的情况。比如旧项目依赖 Python 3.8,而新项目要求 Python 3.12,这时候掌握版本管理技巧就尤为重要。今天这篇推文,就来手把手教你在 Linux 中轻松搞定 Python 版本的升级与切换。

attachments-2025-08-bX9gBon16892aea4ac53a.jpgPython 是很多开发者日常工作离不开的工具。但随着项目需求的变化,我们常常会遇到需要升级 Python 版本,或者在不同版本之间切换的情况。比如旧项目依赖 Python 3.8,而新项目要求 Python 3.12,这时候掌握版本管理技巧就尤为重要。今天这篇推文,就来手把手教你在 Linux 中轻松搞定 Python 版本的升级与切换。

为什么要谨慎操作 Python 版本?

在动手之前,先得明确一个关键点:Linux 系统本身可能依赖自带的 Python 版本(比如很多发行版默认预装 Python 3.6 或 3.8)。直接卸载或替换系统默认 Python,可能导致包管理工具(如 yum、apt)失效,甚至引发系统崩溃。因此,升级或切换版本时,一定要保留系统默认 Python,通过 “并行安装 + 版本切换” 的方式操作。

方法一:源码编译升级 Python(适合追求最新版本)

如果你的目标是安装某个特定的新版本(比如 Python 3.12),源码编译是最直接的方式。以 Ubuntu/Debian 系统为例,步骤如下:

1.安装依赖包

编译 Python 需要一些系统库支持,先执行以下命令安装:

sudo apt updatesudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget

2.下载 Python 源码

到Python 官网复制目标版本的源码链接,用 wget 下载:

wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz

3.解压并编译

解压源码包,进入目录后配置编译参数(注意指定安装路径,避免覆盖系统默认 Python):

tar -xf Python-3.12.0.tgzcd Python-3.12.0./configure --prefix=/usr/local/python3.12 --enable-optimizationsmake -j 4  # 4代表CPU核心数,加速编译sudo make install

4.设置软链接(可选)

如果希望在终端直接用python3.12调用新版本,可创建软链接:

sudo ln -s /usr/local/python3.12/bin/python3 /usr/local/bin/python3.12sudo ln -s /usr/local/python3.12/bin/pip3 /usr/local/bin/pip3.12

方法二:用工具快速切换版本(推荐新手)

如果需要频繁在多个 Python 版本间切换,推荐使用update-alternatives或pyenv这类工具,操作更简单。

方式 1:用 update-alternatives 管理系统版本

1.注册已安装的 Python 版本

假设系统中已有 python3.8 和 python3.12,执行以下命令注册:

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/python3.12/bin/python3 2

其中数字 “1”“2” 代表优先级,数字越大优先级越高。

2.切换版本

输入命令后按提示选择需要的版本:

sudo update-alternatives --config python3

方式 2:用 pyenv 管理用户级版本(更灵活)

pyenv可以在用户目录下安装多个 Python 版本,不影响系统全局设置,适合多项目隔离。

1.安装

pyenvcurl https://pyenv.run | bash

安装完成后,按提示在~/.bashrc或~/.zshrc中添加环境变量,然后重启终端。

2.安装指定 Python 版本

pyenv install 3.12.0  # 安装3.12.0pyenv install 3.8.18  # 安装3.8.18

3.切换版本

全局切换(对当前用户生效):pyenv global 3.12.0

局部切换(仅当前目录生效,适合项目隔离):pyenv local 3.8.18

查看已安装版本:pyenv versions

避坑指南:这些细节要注意

1.区分 python 和 python3

Linux 中python通常指向 Python 2.x,python3指向 Python 3.x,切换时注意命令对应的版本。

2.避免破坏系统依赖

不要删除系统默认的 Python 版本,也不要将/usr/bin/python3直接软链接到高版本,否则可能导致apt等工具报错。

3.虚拟环境配合使用

切换版本后,建议用python3 -m venv myenv创建虚拟环境,避免不同项目的依赖冲突。

4.验证版本是否生效

切换后用python3 --version或pip3 --version确认当前版本是否正确。

总结

无论是升级到最新版本,还是在多个版本间灵活切换,核心原则都是 “不干扰系统默认 Python”。源码编译适合需要特定版本的场景,update-alternatives和pyenv则更适合日常版本管理。根据自己的需求选择合适的方法,就能轻松应对多版本开发场景啦~

更多相关技术内容咨询欢迎前往并持续关注好学星城论坛了解详情。

想高效系统的学习Python编程语言,推荐大家关注一个微信公众号:Python编程学习圈。每天分享行业资讯、技术干货供大家阅读,关注即可免费领取整套Python入门到进阶的学习资料以及教程,感兴趣的小伙伴赶紧行动起来吧。

attachments-2022-05-rLS4AIF8628ee5f3b7e12.jpg

  • 发表于 2025-08-06 09:24
  • 阅读 ( 27 )
  • 分类:Python开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1335 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 2172 文章
  3. Pack 1335 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章