解决Ubuntu 20安装python3.11后,使用update-alternatives切换版本而产生的apt_pkg模块导入错误

具体报错信息

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
ModuleNotFoundError: No module named 'apt_pkg'

具体分析

当你使安装了python3.11后,实际上ubuntu20的环境默认下,还是有很多底层模块使用到了python3.8的包,所以,当你执行某命令错误,或者执行升级的时候,都会出现这个错误。原因就是系统底层引用了py3.8的包,但是当前的python3的解析器版本是3.11,而且是没有安装对应版本的apk_pkg模块。所以才会产生这样的报错信息。

解决方法:

把原来的apt_pkg清理掉后,重新安装则可以。
apt remove python3-apt
apt autoremove
apt install python3-apt
# 如果你跟我一样 ,使用的是aptitude,则:
aptitude install python3-apt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ViniJack

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值