簡體   English   中英

導入錯誤:沒有名為 gi.repository 的模塊

[英]ImportError: No module named gi.repository

我正在嘗試在 Ubuntu 10.04 上啟動 python 腳本:

from gi.repository import 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 ,但沒有幫助。 有人遇到過這個問題嗎?

嘗試通過安裝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  
sudo apt-get install -y python-gobject

在 Ubuntu 18.04 上為我修復了它。

conda install -c conda-forge pygobject對 Anaconda 的回答對我不起作用,但conda install -c conda-forge pygobject確實適用。

10.04? 那是 GNOME 3 之前的版本,因此首選的 Python 綁定基於 PyGTK,而不是 PyGObject。 您需要使用(過時的)PyGTK 綁定或升級到更新的操作系統。

Anaconda通常具有適用於您的平台(Mac 或更舊的 Ubuntu)的 python 包二進制文件。 根據@Abhijit,您需要pygobject 它的工作原理很像pip

conda install -c auto pygobject

你需要安裝pygobject,pygobject3(3來自gtk版本,不是python)。

如果您使用的是 Mac:

  • ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null安裝最新版本的homebrew
  • brew install pygobject安裝pyobject
  • brew install pygobject3安裝 pyobject3
  • mkdir -p /Users/abhijit/Library/Python/2.7/lib/python/site-packages檢查並構建sitepath目錄,如果它不存在
  • echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/abhijit/Library/Python/2.7/lib/python/site-packages/homebrew.pth echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/abhijit/Library/Python/2.7/lib/python/site-packages/homebrew.pth在你的 python 站點包到你的自制程序路徑

這對我有用(Ubuntu 20.04 LTS):

sudo apt reinstall python3-gi

很簡單的。 打開/usr/bin/gnome-terminal,可以看到解釋器是python3:

#!/usr/bin/python3

將解釋器的路徑改為python3.5:

#!/usr/bin/python3.5

在 Ubuntu 16.04 上為我修復了它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM