如何在Python 2.5模块中列出方法?

时间:2009-08-15 00:13:03

标签: python introspection python-2.5

我正在尝试使用用C编写的Python库,它没有任何文档。我想使用内省来至少看看模块中有哪些方法和类。有人有一个函数或库我可以用来列出模块中的函数(带参数列表)和类(带方法和成员变量)吗?

我发现this article关于Python内省,但我很确定它不适用于Python 2.5。谢谢你的帮助。

4 个答案:

答案 0 :(得分:55)

以下是您至少可以做的一些事情:

import module

print dir(module) # Find functions of interest.

# For each function of interest:
help(module.interesting_function)
print module.interesting_function.func_defaults

答案 1 :(得分:12)

你提到的Mark Pilgrim的chapter 4确实适用于Python 2.5(以及任何其他最近的2.*版本,这要归功于向后兼容性)。马克没有提到help,但我看到其他答案。

没有人(包括Mark ;-)似乎提到的一个关键点是inspect,这是Python标准库中的一个很好的模块,它真正有助于高级内省。

答案 2 :(得分:6)

这也很不错:

import module
help(module)

它将打印模块的docstring,然后列出模块的内容,也打印他们的文档字符串。

答案 3 :(得分:4)

dir()函数显示模块具有的所有成员。