0

在由 执行的 shell 中python -v,我输入了from gi.repository import Peas它,它给了我模块的目录:

/usr/lib/python2.7/dist-packages/gi/repository

现在我进入这个目录期望找到子目录,例如,,Peas(我可以导入)等,但它实际上是什么RBGtk

/usr/lib/python2.7/dist-packages/gi/repository$ ls
__init__.py  __init__.pyc

而已。当它只有一个__init__.py文件时,Python 如何从这个模块导入豌豆?如何查看Peas模块内的代码?

显然我对这一切都不是很了解。有什么解释?

编辑:好的,这与我之前的问题非常相关: IPython 中的奇怪模块自动完成行为

所以 gi.repository 是在导入时生成的,因为它是一个动态绑定。说得通。

但是如果我从 导入豌豆gi.repository,仍然应该有一种方法可以检查正在导入的代码是什么?因为我想使用 PeasActivable 接口。

4

1 回答 1

0

因为repository目录有一个__init__.py文件,gi.repository是一个。这意味着您可以从中导入,并且包“root”将成为__init__文件。如果你有一个module.py在同一目录中命名的文件,你也可以从gi.repository.module.

所以你的名字Peas,应该都在文件中定义。RBGtk__init__.py

于 2013-06-08T12:22:11.373 回答