【问题标题】:ImportError: No module named gi.repositoryImportError:没有名为 gi.repository 的模块
【发布时间】:2014-06-26 03:10:21
【问题描述】:

我正在尝试在 Ubuntu 10.04 上启动 python 脚本:

从 gi.repository 导入 Nautilus, GObject

它不起作用:

Traceback (most recent call last):
  File "script.py", line 1, in <module>
    from gi.repository import Nautilus, GObject
   ImportError: No module named gi.repository

我安装了python-gobject-devpython-gobjectpython-nautilus,但没有帮助。 有人遇到过这个问题吗?

【问题讨论】:

    标签: python repository gobject nautilus


    【解决方案1】:

    10.04?那是 GNOME 3 之前的版本,因此首选的 Python 绑定基于 PyGTK,而不是 PyGObject。您需要使用(过时的)PyGTK 绑定或升级到更新的操作系统。

    【讨论】:

      【解决方案2】:

      需要安装pygobject,pygobject3(3来自gtk版本,不是python)。

      如果您使用的是 Mac:

      • ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" &lt; /dev/null 2&gt; /dev/null安装最新版自制软件
      • brew install pygobject安装pyobject
      • brew install pygobject3安装pyobject3
      • mkdir -p /Users/abhijit/Library/Python/2.7/lib/python/site-packages如果站点路径目录不存在,则检查并构建它
      • echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' &gt;&gt; /Users/abhijit/Library/Python/2.7/lib/python/site-packages/homebrew.pth 在你的 python Site-packages 中创建一个快捷方式到你的 homebrew 路径

      【讨论】:

        【解决方案3】:

        Anaconda 通常具有适用于您的平台(Mac 或旧版 Ubuntu)的 python 软件包二进制文件。根据@Abhijit,您需要pygobject。它很像pip:

        conda install -c auto pygobject
        

        【讨论】:

          【解决方案4】:

          @hob 对 Anaconda 的回答对我不起作用,但 conda install -c conda-forge pygobject 对我起作用。

          【讨论】:

            【解决方案5】:

            尝试通过安装PyGObject来修复它:

            # With Apt on Ubuntu:
            $ sudo apt install python3-gi
            
            # With Yum on CentOS / RHEL:
            $ sudo yum install python36-gobject.x86_64 
            
            # Or directly with Pip:
            $ pip3 install PyGObject  
            

            【讨论】:

              【解决方案6】:
              sudo apt-get install -y python-gobject
              

              在 Ubuntu 18.04 上为我修复了它。

              【讨论】:

                【解决方案7】:

                这对我有用(Ubuntu 20.04 LTS):

                sudo apt reinstall python3-gi

                【讨论】:

                  【解决方案8】:

                  非常简单。 打开/usr/bin/gnome-terminal,可以看到解释器是python3:

                  #!/usr/bin/python3
                  

                  将解释器的路径改为python3.5:

                  #!/usr/bin/python3.5
                  

                  在 Ubuntu 16.04 上为我修复了它。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 2013-03-11
                    • 2012-12-07
                    • 2012-05-23
                    • 2019-07-29
                    • 2015-07-04
                    • 2014-03-15
                    • 2017-12-29
                    • 2014-09-12
                    相关资源
                    最近更新 更多