我在Linux Mint中安装了python3.8,并使用此命令将python3.8设置为默认值
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2
sudo update-alternatives --config python3
sudo rm usr/bin/python3
当我在终端中输入废话时,都会出现此错误。我该如何解决这个问题?
Traceback (most recent call last):
File "`/usr/lib/command-not-found`", line 28, in <module>
from CommandNotFound import CommandNotFound
File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
from CommandNotFound.db.db import SqliteDatabase
File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module>
import apt_pkg
答案 0 :(得分:2)
当您键入未知命令时,某些Linux版本(包括您的Linux)会尝试为您提供可能的含义(或可能需要安装的软件包)建议。在这种情况下,用于给出建议的代码是用Python编写的,并且可以在python的原始版本中使用。在新版本中,它找不到其库之一apt_pkg
。
可能的解决方案:
切换回原始的python默认版本,并在需要时显式使用python3.8。如果通常使用virtualenv(或类似的方法),则只需在创建新的虚拟环境时指定Python版本,而不必每次都指定。
切换回去可能是最好的选择。
为新版本的Python安装apt_pkg
库。这将解决眼前的问题,但是可能其他所有类型的系统脚本也都将失败,而追逐它们将非常繁琐,令人沮丧且容易出错。您可能会错过一些错误不明显的地方。除非您非常彻底,否则您的系统将无法正常运行。
答案 1 :(得分:1)
似乎找不到数据库文件,因此您可能需要重新安装python安装的这一部分。如果失败,建议您尝试重新安装整个python安装程序,并尝试重新启动计算机。