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

文章讲述了在升级到Python3.11后,在Ubuntu20环境中遇到apt_pkg模块缺失的错误,原因是底层依赖的包仍为Python3.8版本。解决方法是先卸载旧的python3-apt,然后重新安装。
摘要由CSDN通过智能技术生成

具体报错信息

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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值