【Bug】解决 Ubuntu 中 “error: Unable to Find Python3 Executable” 错误

解决 Ubuntu 中 "Unable to Find Python3 Executable" 错误

  • 在 Ubuntu 系统上使用 Python 进行开发时,遇到找不到 python3 可执行文件的错误。

主要问题是无法正常打开终端(原生与terminator),找不到python3,且无法执行

bash 复制代码
sudo apt update
sudo apt upgrade

等命令,具体的错误信息如下:

bash 复制代码
error: unable to find python3 executable
/usr/bin/env: "python3": 没有那个文件或目录

直接尝试重装python会出现报错:

1 问题原因

  • 出现这个问题的原因是系统中缺少 python3 的符号链接。虽然系统已经安装了 Python 3.8,但
    /usr/bin/python3 符号链接不存在,导致系统在运行一些 Python 程序时无法找到 python3 可执行文件。

在系统中,运行以下命令可以看到 python3 不存在:

bash 复制代码
ls /usr/bin/python*

输出如下:

bash 复制代码
/usr/bin/python2
/usr/bin/python2.7
/usr/bin/python3.8
/usr/bin/python3.8-config
/usr/bin/python3.8-coverage
......

如上所示,系统中是安装了 python3.8的,但没有 python3 这个符号链接。

2 解决方案

要解决这个问题,我们只需手动创建一个指向 python3.8 的符号链接。以下是具体的步骤:

第一步:检查系统中的 Python 版本

首先,确认系统中已经安装了 python3.8 或其他版本的 Python。你可以使用以下命令来查看:

bash 复制代码
ls /usr/bin/python*

输出中应该包含 python3.8 或其他版本的 Python 3.x。

第二步:创建 python3 符号链接

使用以下命令创建一个符号链接,指向 python3.8

bash 复制代码
sudo ln -s /usr/bin/python3.8 /usr/bin/python3

第三步:验证 Python3 是否正常工作

符号链接创建完成后,运行以下命令检查是否可以正常调用 python3

bash 复制代码
python3 --version

如果一切顺利,终端应该输出类似以下内容:

bash 复制代码
Python 3.8.x

常见问题

  1. 如果你的系统中没有安装 Python 3.8

    你可以使用以下命令安装:

    bash 复制代码
    sudo apt update
    sudo apt install python3.8
  2. APT 更新错误

    在执行 apt update 时,如果出现类似以下错误:

    bash 复制代码
    E: Problem executing scripts APT::Update::Post-Invoke-Success

    这是由于某些脚本依赖缺失,尝试运行以下命令来修复:

    bash 复制代码
    sudo apt --fix-broken install

3总结

通过手动创建 python3 的符号链接,可以解决 Ubuntu 系统中找不到 Python3 可执行文件的问题。

这个问题主要是因为符号链接缺失,但并不意味着系统中缺少 Python 3。

相关推荐
GoppViper38 分钟前
Linux 性能调优技巧
linux·运维·服务器
小叶学C++1 小时前
【Linux】Linux环境基础开发工具使用
linux
育种数据分析之放飞自我2 小时前
GWAS分析中显著位点如何注释基因:excel???
linux·算法·excel
小鹿( ﹡ˆoˆ﹡ )2 小时前
Python 并发新境界:探索 `multiprocessing` 模块的无限可能
linux·服务器·python
Zfox_4 小时前
【Linux】进程地址空间、环境变量:从理论到实践(三)
java·linux·运维
邓草4 小时前
帝国CMS系统开启https后,无法登陆后台的原因和解决方法
linux·php·apache
风雨「83」5 小时前
centos已安装python3.7环境,还行单独安装python3.10环境,如何安装,具体步骤
linux·开发语言·python
peanutfish5 小时前
Chapter 4 RH294 RHEL Automation with Ansible
linux·ansible·yaml
Ling-X55 小时前
红日靶机(三)笔记
linux·windows·内网渗透·靶机笔记·vulnstack
卑微求AC7 小时前
(C语言贪吃蛇)14.用绝对值方式解决不合理的走位
linux·c语言·开发语言·嵌入式·c语言贪吃蛇