You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 18.04下如何将默认python3版本切换为新安装的Python 3.11.5?

Ubuntu 18.04下如何将默认python3版本切换为新安装的Python 3.11.5?

我来帮你解决这个Python版本切换的问题,你遇到的情况是系统默认的python3仍指向旧的3.6.9版本,虽然新的3.11.5已经安装完成,但系统还没把它设为默认调用版本。下面给你几种靠谱的解决方法,按需选择:

方法一:用系统工具update-alternatives管理(推荐,系统级生效)

这个是Ubuntu官方推荐的版本管理方式,能统一管理系统中的Python版本,还能随时切换回来,非常方便:

  1. 先把新安装的Python 3.11注册到系统的版本备选列表里:
sudo update-alternatives --install /usr/bin/python3 python3 /usr/local/bin/python3.11 2

这里最后的2是优先级数字,数字越大优先级越高;如果原来的Python 3.6已经在列表里,它的优先级可能是1,这样3.11就会自动成为默认。
2. 手动选择默认版本(可选,如果刚才的优先级设置已经让3.11成为默认,这步可以跳过):

sudo update-alternatives --config python3

执行后会弹出所有可选的Python 3版本,输入对应Python 3.11的编号,回车确认即可。
3. 验证效果:

python3 --version

此时应该会显示Python 3.11.5了。

方法二:修改用户配置文件(仅当前用户生效)

如果不想修改系统全局的设置,只想让自己的终端会话默认用3.11,可以通过添加永久别名来实现:

  1. 打开用户的bash配置文件:
nano ~/.bashrc
  1. 在文件末尾添加一行:
alias python3='/usr/local/bin/python3.11'
  1. 保存并退出后,让配置立即生效:
source ~/.bashrc

之后重启终端,敲python3就会自动调用3.11版本了。不过要注意,这种方法只对当前用户的终端会话有效,外部程序如果直接调用python3,可能还是会用系统默认的版本。

关于你遇到的PATH问题

看你的PATH输出里有/home/david/anaconda3/bin,但这个目录不存在,所以它不会影响Python的调用优先级。当前/usr/local/bin在PATH中的位置比/usr/bin靠前,但因为/usr/local/bin里只有python3.11,没有名为python3的可执行文件或链接,所以系统会继续往后找/usr/bin/python3(也就是旧版本的链接)。上面的两种方法都能解决这个问题,不用手动去创建符号链接(当然你也可以这么做,但update-alternatives更规范)。

备注:内容来源于stack exchange,提问作者BondedDust

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 14:43:02