программа python3 Gtk выдает ошибку introspection typelib

#python #python-3.x #gtk

#python #python-3.x #gtk

Вопрос:

Я пытаюсь преобразовать программу python2 GtK, в частности Comix, в программу python3 Gtk.

Я достиг точки, когда программа выдает ошибку:

Ошибка импорта: не удается импортировать имя Gobject, тип introspection typelib не найден

На этом этапе выдается ошибка:

 from gi.repository import Gobject
  

в bookmark.py любом случае, сама программа содержит различные связанные py-файлы, и представить структуру не так просто.

Забавно то, что одна и та же команда импорта выполняется в других модулях в той же программе без проблем. Я не уверен, в чем здесь проблема.

Некоторые решения, упомянутые как для установки gir1.2-gtk-3.0 , выполнены, но безрезультатно. Кроме того, я установил свои модули с помощью pip, и их компиляция с использованием --enable-introspection=yes кажется мне излишней. Должно быть другое решение.

Есть идеи, что здесь происходит и как с этим бороться?

Ответ №1:

имена модулей чувствительны к регистру, попробуйте это вместо:

 from gi.repository import GObject
  

Комментарии:

1. Хорошо, вы правы. По какой-то причине pycharm не может правильно сообщить об импорте из gi (все они кажутся неправильными), и я этого не заметил. Глупая ошибка…

Ответ №2:

если вы используете Linux, например: Ubuntu, Fedora,…

 #!/usr/bin/python3 
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, GObject