Comment puis-je lister les méthodes dans un module python 2.5?
J'essaie d'utiliser une bibliothèque Python écrite en C qui n'a aucune documentation d'aucune sorte. Je veux utiliser l'introspection pour au moins voir quelles méthodes et classes sont dans les modules. Quelqu'un a-t-il une fonction ou une bibliothèque que je peux utiliser pour lister les fonctions (avec des listes d'arguments) et les classes (avec des méthodes et des variables membres) dans un module?
J'ai trouvé Cet article sur l'introspection Python, mais je suis sûr que cela ne s'applique pas à Python 2.5. Merci pour l'aide.
4 réponses
Voici quelques choses que vous pouvez faire au moins:
import module
print dir(module) # Find functions of interest.
# For each function of interest:
help(module.interesting_function)
print module.interesting_function.func_defaults
Le Chapitre 4 de Mark Pilgrim, que vous mentionnez, s'applique très bien à Python 2.5 (et à toute autre version récente de 2.*
, grâce à la compatibilité ascendante). Mark ne mentionne pas help
, mais je vois d'autres réponses.
Un bit clé que personne (y compris Mark;-) ne semble avoir mentionné est inspect, un excellent module dans la bibliothèque standard de Python qui aide vraiment à l'introspection avancée.
Juste c'est assez bon aussi:
import module
help(module)
Il imprimera la docstring pour le module, puis listera le contenu du module, imprimant également leurs docstrings.
Les fonctions dir () montrent tous les membres d'un module.