Como listar todas as funções em um módulo Python?

Eu tenho um módulo python instalado no meu sistema e I'gostaria de poder ver quais funções/classes/métodos estão disponíveis nele.

Quero chamar a função de docente em cada um deles. Em rubi eu posso fazer algo como ClassName.methods para obter uma lista de todos os métodos disponíveis nessa classe. Existe algo semelhante em python?

por exemplo, algo do género:

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

Você pode utilizar dir(módulo) para ver todos os métodos/atributos disponíveis. Confira também PyDocs.

Comentários (5)
Solução

O módulo inspect. Veja também o módulo pydoc, a função help() no interpretador interativo e a ferramenta de linha de comando pydoc que gera a documentação que você está procurando. Você pode simplesmente dar a eles a classe da qual você deseja ver a documentação. Eles também podem gerar, por exemplo, a saída HTML e gravá-la no disco.

Comentários (4)
import types
import yourmodule

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