私は何人かの人々と一緒に偽のニュース検出プログラムを構築し、いくつかの大きな進歩を遂げていますが、グループの5人のメンバーのうちPythonプログラムを実行できるのは1人だけです。私は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 <module>
gi.require_version('Gtk', '3.0')
AttributeError: 'module' object has no attribute 'require_version'
私は行ってgtk + -3.0をインストールしました:
Sudo apt install gtk+-3.0
しかし、それは役に立ちません。
また、プログラムのUI部分を作成するGladeをインストールして、修正を試みました。しかし、それでもこのエラーはなくなりませんでした。
ファイルはここにあります 問題を再現して再現したい場合は困惑しているので、助けをいただければ幸いです。また、python-gobject
のインストールなどの修正のためにいくつかの他の提案を試みましたが、問題。
小規模なプログラムを実行して同じエラー( screenshot )を取得できます。このプログラムは問題を生成するのに十分です:
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 <module>
gi.require_version("Gtk", "3.0")
AttributeError: 'module' object has no attribute 'require_version'
conesco3@Conesco3:~/Desktop$
編集:他の人からの提案の後、仮想環境を作成し、Fedoraコンピューターからtxtファイルに要件をパイプし、仮想環境でそれらを再度インストールしました。これにより、同じエラーが発生します。
python2 -c 'import gi; print(gi.__file__)'
の出力は次のとおりです。
/usr/local/lib/python2.7/dist-packages/gi/__init__.pyc
インポートするgi
モジュールは、UbuntuのGIパッケージpython-gi
からのものではなく、/usr/local/
に手動でインストールしたものです。それは非常に古いバージョンか、たまたまgi
と呼ばれるようになったものでもあります。
削除して、パッケージpython-gi
がインストールされていることを確認してください。