如何修复 Ubuntu 20.04 中“没有名为‘apt_pkg’的模块”错误?

如何修复 Ubuntu 20.04 中“没有名为‘apt_pkg’的模块”错误?

我有一台在 Windows 中运行 Ubuntu 20.04 的虚拟机,我尝试修复一个问题,但现在出现了错误

ModuleNotFoundError: No module named 'apt-pkg'

我确实运行了代码

sudo apt install python3-apt

这没有帮助。重新启动虚拟机时,我收到相同的错误(即我实际上无法在 GUI 上打开终端,可能是因为该错误)。我需要切换到非 GUI 终端...

我按照建议的解决方案这里但是命令

ls -l | grep apt_pkg

没有返回任何东西。

我也尝试过这个问题运行第一个命令后出现如下错误sudo apt remove python3-apt

在此处输入图片描述

答案1

解决办法:运行以下命令,选择python3.8:

sudo update-alternatives --config python3

答案2

许多内置/系统脚本使用以下“shebang”来指示应运行哪个二进制文件。这应该是指向系统默认 Python 版本的链接:

#!/usr/bin/python3

在 Ubuntu 20.04 上,预期为 ,python3.8并且许多脚本假设这是调用 时使用的版本python3。如果您安装了不同版本的 python,则这些脚本可能会意外失败。您需要确保/usr/bin/python3指向python3.8


一种方法是遵循@Alex 提供的该问题的替代答案我在这里详细说明。假设您已经安装了更新替代方案并添加了不同版本的 Python 并将其中一个配置为默认版本,然后这应该允许您选择不同版本的 Python:

sudo update-alternatives --config python3

为了解决问题,您可以python3.8通过将其(重新)添加到更新替代方案具有适当高的优先级(在下面的例子中我使用 100)。

sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 100

再次使用参数重新运行该工具--config python3应该会列出替代方案及其优先级。

相关内容