python - Python GTK+ 3 教程 Hello World 中没有名为“gi”的模块
问题描述
https://python-gtk-3-tutorial.readthedocs.io/en/latest/install.html
我一直在尝试遵循本教程,但似乎无法正确安装。教程示例和结果在底部。不过,很明显,我没有按照说明在 MacOS Mojave 上安装所需的模块。
我遵循的步骤是:
brew install GTK+3
brew install gobject-introspection
brew install PyGObject
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 \
/Users/Wes/Dropbox/Programming/Python/glade_againnn/tryit.py
虽然这不在教程中,但我尝试过pip install PyGObject
并收到一条很长的错误消息:
Command "/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/vf/x732mfwj4nvf5g_mntsyw97h0000gp/T/pip-install-xfgd22p9/PyGObject/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /private/var/folders/vf/x732mfwj4nvf5g_mntsyw97h0000gp/T/pip-record-3tko684k/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/vf/x732mfwj4nvf5g_mntsyw97h0000gp/T/pip-install-xfgd22p9/PyGObject/
错误信息是:
3.7.1 (default, Nov 28 2018, 11:51:54)
Traceback (most recent call last):
[Clang 10.0.0 (clang-1000.11.45.5)]
File "/Users/Wes/Dropbox/Programming/Python/glade_againnn/tryit.py", line 5, in <module>
import gi
ModuleNotFoundError: No module named 'gi'
import sys
print(sys.version)
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtkwindow
window = Gtk.Window(title="Hello World")
window.show()
window.connect("destroy", Gtk.main_quit)
Gtk.main()
错误信息是:
3.7.1 (default, Nov 28 2018, 11:51:54)
Traceback (most recent call last):
[Clang 10.0.0 (clang-1000.11.45.5)]
File "/Users/Wes/Dropbox/Programming/Python/glade_againnn/tryit.py", line 5, in <module>
import gi
ModuleNotFoundError: No module named 'gi'
我已经在 virtualenv 中尝试了这些步骤,然后在没有激活 virtualenv 的情况下再次尝试了这些步骤。
接下来我应该尝试什么?
解决方案
您安装了两个版本Python
(3.6 和 3.7.1)。使用的GTK
是:
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6
如果您想使用它,则GTK
需要安装3.7.1。Python
推荐阅读
- excel - 复制唯一的过滤列值VBA
- php - Doctrine 外键级联删除/更新超过最大深度 15
- java - 错误 - 将 Eclipse 项目导入 Android Studio 后出现“错误:AndroidManifest.xml 不存在或根标签不正确”
- java - NoSuchBeanDefinitionException:没有可用类型的合格 bean:预计至少有 1 个有资格作为自动装配候选者的 bean
- proxy - TCP/HTTP 会合(中继)代理
- android - Android 发送彩信不起作用
- ecmascript-6 - 使用 jest Unexpected identifier 创建 React App 执行测试
- oracle - Hibernate 使用 BigDecimal 而不是 Int
- android - 改造 @Url 不会覆盖 BaseUrl
- c# - C# 表达式组合