Redian新闻
>
修复 Ubuntu Linux 中 “Command ‘python’ not found” 的错误 | Linux 中国

修复 Ubuntu Linux 中 “Command ‘python’ not found” 的错误 | Linux 中国

科技
 
导读:如果你注意这个错误信息,它说明了很多东西。这里的 python 命令实际上是 python3。   
本文字数:2346,阅读时长大约:3分钟

如何在 Linux 终端中运行一个 Python 程序?像这样,对吗?

  1. python program.py

然而,如果你试图在 Ubuntu(和其他一些发行版)中使用 python 命令,它会抛出一个错误。

  1. command python not found, did you mean:
  2. command python3 from deb python3
  3. command python from deb python-is-python3

如果你注意这个错误信息,它说明了很多东西。这里的 python 命令实际上是 python3

如果你不理解,不用担心。我将在这里详细解释。

为什么在 Ubuntu 上没有发现 python 命令?

这是因为 Python 语言不是以 python 的形式安装的,而是以 python3 或 python2 的形式安装的(在一些老的 Ubuntu 版本中)。

在遥远的过去的某个时间点,Python 实际上是作为 python 包/可执行文件提供的。当 Python 发布第二版时,Ubuntu 和其他发行版不得不同时支持 Python 1.x 和 2.x 版本。

因此,他们将较新的 Python 版本命名为 python2,以区分这两个版本。其他应用或库也在其代码中指定 python 或 python2

最终,Python 1 版本被完全停用,但软件包继续被命名为 python2

类似地,当 Python 3 版本发布时,发行版开始同时提供 python2 和 python3 包。

Python 2 不再被支持,Python 3.x 是你在 Ubuntu 上安装的版本。该软件包仍被命名为 python3

总结一下,你已经在 Ubuntu 上安装了 Python。它是以 python3 软件包方式使用的。

那么,当你 在 Ubuntu 上看到 “Python command not found” 的错误🔗 itsfoss.com 时,你有什么选择?让我来介绍一下。

确保你的系统中已经安装了 Python

它应该已经安装了,但仔细检查一下也无妨。

Ubuntu 18.04 也有 Python 2,但 20.04 及更高版本只有 Python 3。不过,你有哪个版本:

  1. type python python2 python3

正如你在下面的截图中看到的,我的系统上安装了 Python 3 版本。

Checking Python version in Ubuntu

如果你没有安装任何 Python 版本,你可以用以下命令安装 Python 3 版本。

  1. sudo apt install python3

使用 python3 而不是 python

如果对你来说不是太麻烦,在需要的地方使用 python3 命令而不是 python

想检查已安装的 Python 版本吗?请这样输入:

  1. python3 --version

然后你会在输出中得到版本的详细信息:

  1. ~$ python3 --version
  2. Python 3.10.4

如果你必须运行一个 Python 程序,请像这样执行它:

  1. python3 program.py

这在大多数情况下应该对你有用。但是,如果你使用的是一些(旧的)Python 应用,期望在其代码中运行 Python 可执行文件,你就会有问题。别担心,你也可以绕过它。

将 python3 链接为 python

你可以在你的 .bashrc 文件中创建一个永久别名,像这样:

  1. alias python='python3'

这样,你可以运行 python 命令,而你的系统运行 python3

这在大多数情况下都会起作用,除非某些程序期望运行 /usr/bin/python。现在,你可以在 /usr/bin/python 和 /usr/bin/python3 之间建立符号链接,但对于 Ubuntu 用户来说,存在一个更简单的选择。

对于 Ubuntu 20.04 和更高版本,如果你安装了 python-is-python3 软件包,你有一个软件包可以自动完成所有链接创建。这也是原始错误信息所提示的。

  1. sudo apt install python-is-python3

install python is python3 ubuntu

你可以看到符号链接已经被创建,你可以使用 python 命令(实际上是运行 python3),没有任何问题。

checking python ubuntu

我希望这能澄清 Ubuntu 中 Python 软件包的问题。如果你有任何问题或建议,请告诉我。


via: https://itsfoss.com/python-not-found-ubuntu/

作者:Abhishek Prakash 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出


LCTT 译者 :geekpi
💎💎💎💎
翻译: 1738.5 篇
|
贡献: 3199 天
2013-10-25
2022-07-29
https://linux.cn/lctt/geekpi
欢迎遵照 CC-BY-SA 协议规定转载,
如需转载,请在文章下留言 “转载:公众号名称”,
我们将为您添加白名单,授权“转载文章时可以修改”。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
如何在 Ubuntu/Linux 和 Windows 之间共享文件夹 | Linux 中国详解在 Ubuntu 中引导到救援模式或紧急模式 | Linux 中国如何在 Ubuntu 中卸载 deb 包 | Linux 中国Python 中可观测性的 7 个关键部分 | Linux 中国使用 Python 的 requests 和 Beautiful Soup 来分析网页 | Linux 中国Ubuntu 22.04 之 KVM 安装手札 | Linux 中国The Winners of China’s Housing Bust: Burnouts and Beach Bums修复 Ubuntu 中的 “Pending Update of Firefox snap” 错误 | Linux 中国用 Python 测试 API 的 3 种方式 | Linux 中国机器学习:使用 Python 进行预测 | Linux 中国Thonny:在学校教授 Python 编程的理想 IDE | Linux 中国如何在 Kubuntu 22.04 中安装 KDE Plasma 5.25 | Linux 中国在美国122.要?陆爱,罗钱Hiring | Real Estate Senior Accountant / Accounting ManagerFrom Baghdad to the Bund: The Family That Built Shanghai五月阳台~~~~~Ubuntu 22.04 LTS 是目前最安全的版本的七大原因 | Linux 中国Python批量将Photoshop文件保存为图片机器学习:使用 Python 进行分类 | Linux 中国戴尔 XPS 13 Plus 开发者版获得 Ubuntu 22.04 LTS 认证 | Linux 中国生活琐记:友人家温馨的Coffee TimeWomen Want Pepper Spray To Keep Safe, But Buying It Isn’t Easy4 步打包一个新的 Python 模块 | Linux 中国在 Ubuntu 和 Debian 中使用 apt 命令更新单个软件包 | Linux 中国Ubuntu Core 22 来了,适用于物联网和边缘设备 | Linux 中国Python之谜:四舍五入round(4.5)等于4?如何在基于 Ubuntu 的 Linux 发行版上安装最新的 Vim 9.0 | Linux 中国10 大必备 Ubuntu 应用:基本篇 | Linux 中国周末匆匆看儿子如何在 Ubuntu 22.04 LTS 中安装 Docker 和 Docker Compose | Linux 中国同学聚会将你的 Python 脚本转换为命令行程序 | Linux 中国如何在 Ubuntu 中安装具体指定的软件包版本 | Linux 中国如何双启动 Ubuntu 22.04 LTS 和 Windows 11 | Linux 中国免费演出|Free Shakespeare on the Common 2022:Much Ado About Nothing
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。