Я работаю с некоторыми людьми, чтобы создать поддельную программу обнаружения новостей и добился больших успехов, но из 5 членов группы только 1 человек может запустить программу Python. Я запускаю чистую установку Ubuntu 16.04, которой всего несколько часов, а человек, который может запустить программу, имеет Fedora 26. Ошибка при попытке запустить программу: conesco3@Conesco3:~/Documents/Alternative-News-Checker$ sudo python main.py
[sudo] password for conesco3:
Traceback (most recent call last):
File "main.py", line 6, in
Я пошел и установил gtk + -3.0 с помощью:
sudo apt install gtk+-3.0
Но это не помогает.
Я также установил Glade, с которой выполняется часть пользовательского интерфейса программы, с попробуйте и исправьте это. Но это не заставило эту ошибку уйти.
Файлы можно найти здесь, если вы хотите попробовать и воссоздать проблему, я в тупик, поэтому любая помощь приветствуется, и я попробовал несколько других предложений для исправления, такие как установка python-gobject, и они не исправили проблему.
Я могу запустить программу меньшего масштаба и получить ту же ошибку ( Файлы можно найти здесь ) , Эта программа достаточно для создания проблемы:
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
window = Gtk.Window(title="Hello World")
window.show()
window.connect("delete-event", Gtk.main_quit)
Gtk.main()
Запуск этой упрощенной программы выглядит следующим образом:
conesco3@Conesco3:~$ cd Desktop/
conesco3@Conesco3:~/Desktop$ python2 hello.py
Traceback (most recent call last):
File "hello.py", line 2, in
gi.require_version("Gtk", "3.0")
AttributeError: 'module' object has no attribute 'require_version'
conesco3@Conesco3:~/Desktop$
EDIT: после предложений, сделанных кем-то другим, я создал виртуальную среду и передал требования с компьютера Fedora в txt-файл и в виртуальной среде снова установил их; это дает ту же ошибку.
Выход python2 -c 'import gi; print(gi.__file__)':
/usr/local/lib/python2.7/dist-packages/gi/__init__.pyc
Модуль gi, который вы импортируете, не тот, который находится в пакете GI Ubuntu python-gi, но что-то, что вы установили вручную в /usr/local/. Это либо очень старая версия, либо что-то другое, что просто называлось gi.
Удалите его и убедитесь, что установлен пакет python-gi.
Модуль gi, который вы импортируете, не тот, который находится в пакете GI Ubuntu python-gi, но что-то, что вы установили вручную в /usr/local/. Это либо очень старая версия, либо что-то другое, что просто называлось gi.
Удалите его и убедитесь, что установлен пакет python-gi.
Модуль gi, который вы импортируете, не тот, который находится в пакете GI Ubuntu python-gi, но что-то, что вы установили вручную в /usr/local/. Это либо очень старая версия, либо что-то другое, что просто называлось gi.
Удалите его и убедитесь, что установлен пакет python-gi.