How to list all functions in a module?

inspect, module, python, reflection

Solution

Use the `inspect` module:

from inspect import getmembers, isfunction

from somemodule import foo
print(getmembers(foo, isfunction))

Also see the `pydoc` module, the `help()` function in the interactive interpreter and the `pydoc` command-line tool which generates the documentation you are after. You can just give them the class you wish to see the documentation of. They can also generate, for instance, HTML output and write it to disk.

Problem

I have a Python module installed on my system and I'd like to be able to see what functions/classes/methods are available in it. I want to call the `help` function on each one. In Ruby I can do something like `ClassName.methods` to get a list of all the methods available on that class. Is there something similar in Python? e.g. something like: ``` from somemodule import foo print(foo.methods) # or whatever is the correct method to call ```

Original source

Related problems