#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