查找我正在导入的类的代码

时间:2013-06-08 12:18:19

标签: python

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

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

现在我进入了这个目录,期望找到子目标,例如PeasRBGtk(我可以导入)等,但其实际内容是

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

就是这样。当Python只有__init__.py文件时,如何从该模块导入Peas?如何查看Peas模块中的代码?

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

编辑:好的,这与我之前的问题非常相关: Strange module auto complete behavior in IPython

因此gi.repository是在导入时生成的,因为它是动态绑定。有道理。

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

1 个答案:

答案 0 :(得分:0)

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

因此,您的姓名PeasRBGtk应全部在__init__.py文件中定义。