Come elencare tutte le funzioni in un modulo Python?

Ho un modulo python installato sul mio sistema e vorrei essere in grado di vedere quali funzioni/classi/metodi sono disponibili in esso.

Voglio chiamare la funzione doc su ognuno di essi. In rubino posso fare qualcosa come ClassName.methods per ottenere un elenco di tutti i metodi disponibili su quella classe. C'è qualcosa di simile in python?

Ad esempio, qualcosa come:

from somemodule import foo
print foo.methods # or whatever is the correct method to call

Potete usare dir(module) per vedere tutti i metodi/attributi disponibili. Controllate anche PyDocs.

Commentari (5)
Soluzione

Il modulo inspect. Vedi anche il modulo pydoc, la funzione help() nell'interprete interattivo e lo strumento a riga di comando pydoc che genera la documentazione che stai cercando. Puoi semplicemente dare loro la classe di cui vuoi vedere la documentazione. Possono anche generare, per esempio, output HTML e scriverlo su disco.

Commentari (4)
import types
import yourmodule

print([getattr(yourmodule, a) for a in dir(yourmodule)
  if isinstance(getattr(yourmodule, a), types.FunctionType)])
Commentari (4)