ModuleNotFoundError没有名为apt_pkg的模块

2024-04-20 10:08:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用命令添加repo

 sudo add-apt-repository ppa:gezakovacs/ppa

以下是完全错误-

    Traceback (most recent call last):
File "/usr/bin/add-apt-repository", line 11, in <module> from softwareproperties.SoftwareProperties import SoftwareProperties, shortcut_handler
File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 27, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module> from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module> from apport.packaging_impl 
import impl as packaging 
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 23, in <module>
    import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

Original exception was:
Traceback (most recent call last):
File "/usr/bin/add-apt-repository", line 11, in <module> from softwareproperties.SoftwareProperties import SoftwareProperties, shortcut_handler
File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 27, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'

克服错误。

我已经在Xubuntu 16.04上安装了python2、Python3.5和Python3.6。 有什么问题吗???


Tags: inpyimportlibpackagesusrdistline
3条回答

为特定版本的python安装python dev模块:

sudo apt install python3.6-dev

如果你看/usr/bin/add-apt-repository它会说

#! /usr/bin/python3

在上面。如果使用更新的python(例如dist有3.5但安装了3.7)进行更新,则/usr/bin/python3指向的python没有apt_pkg

您可以临时编辑/usr/bin/add-apt-repository以指向

#! /usr/bin/python3.5

(插入发行版python版本)

我有一个类似的问题,当做apt-get升级时。。。问题是apt get试图使用python2.7,但符号链接指向python3.4:

debian:/usr/bin# cat /etc/debian_version
8.10
debian:/usr/bin# ll /usr/bin/python
lrwxrwxrwx 1 root root 18 Feb 26 17:02 /usr/bin/python -> /usr/bin/python3.4

通过创建新的符号链接修复了它

debian:/usr/bin# rm /usr/bin/python
debian:/usr/bin# ln -s /usr/bin/python2.7 /usr/bin/python

相关问题 更多 >