Lors de la déclaration d'une classe qui hérite d'une classe spécifique: la documentation pour la classe existe un moyen de masquer les méthodes héritées de la documentation générée automatiquement (la chaîne de documentation peut-il faire référence à la classe de base, pour des méthodes non écrasées)? Ou est-ce impossible? p> Ceci serait utile: c code> répertorie toutes les méthodes de
dict code> (Soit via
aide (C) code> ou
pydoc code>). p>
pydoc code> répertorie les fonctions définies dans un module après em> ses classes. Ainsi, lorsque les classes ont une très longue documentation, beaucoup d'informations moins qu'utiles sont imprimées avant que les nouvelles fonctions fournies par le module soient présentées, ce qui rend la documentation plus difficile à exploiter (vous devez ignorer toute la documentation pour les méthodes héritées. jusqu'à ce que vous atteigniez quelque chose de spécifique au module documenté). p> p>
3 Réponses :
pydoc code> et l'aide
cod> intégré ne prend pas en charge cela, mais il n'y a aucune raison pour ne pas pouvoir écrire votre propre outil (peut-être en modifiant la source de Pydoc) qui aurait le comportement que vous désirez. Il suffit de marcher sur la
Merci. Je voulais juste savoir si utilisateurs i> pourrait obtenir directement une documentation pydoc plus utilisable pour mes modules en les modifiant. Il est bon de savoir que pydoc et aide () sont limités, à cet égard.
Vous pouvez donner à votre classe une métaclasse de classe A avec la méthode spéciale Notes: P>
__ dir __ code> qui renvoie sa propre liste d'attributs. PYDOC utilisera cette liste. P>
dir () code>. li>
Merci d'avoir mentionné cela. J'ai essayé de faire ce que vous suggérez (en adaptant des exemples de voidspace.org.uk/ python / articles / métaclasses.shtml ), mais pendant que le comportement pydoc est modifié, aucun attribut n'est affiché. Ce serait bien si vous pouviez fournir du code. :)
J'ai eu le même problème et je l'ai résolu sur Python 2.7.6 pour Windows (x86) en ajoutant 3 lignes à pydoc.py. Instructions: p>
Trouver toutes les occurrences du attrs, héritée = _split_list (attrs, lambda t: t [2] est ceclass) p> li>
ol>
et écrit Maintenant, il n'imprime plus les méthodes héritées. P> héritée code> variable forte> (3 fois, sur mon compte) dans le fichier et
hérité = [] code> sur une nouvelle ligne ci-dessous. p>