Seite 1 von 1

Dokumentation zu help()

Verfasst: Mittwoch 21. Februar 2007, 14:10
von ws
Hallo,

für ein paar Module, die ich gerade erstelle, möchte ich für andere Entwickler eine ensprechende Hilfe zur Verfügung stellen.

Was mir fehlt, ist eine Beschreibung der Arbeitsweise von help(). Ist es möglich, mit help() eine Information zu einem Objekt auszugeben? So dass ich eine Klasse in einem Modul helptest.py wie folgt anlegen kann:

Code: Alles auswählen

class HelpTest(object):
    def __init__(self, attr1, attr2):
	self.attr1 = attr1
	self.attr2 = attr2
	self.__doc__ = "Object with attr1=%(attr1)s, attr2=%(attr2)s" % self.__dict__

ht = HelpTest("Wert1", "Wert2")
und mit

Code: Alles auswählen

from helptest import *
help(ht)
den doc-String der Instanz bekomme, und nicht nur Informationen über die Klasse?

Oder gibt es andere Möglichkeiten, anderen entsprechende Informationen bereitzustellen (natürlich kann ich mit

Code: Alles auswählen

from helptest import *
print print ht.__doc__
den doc-String direkt ausgeben, aber ich frage mich, ob es da elegantere Methoden gibt.

Thanx in advance

ws

Verfasst: Mittwoch 21. Februar 2007, 17:48
von BlackJack
`help()` fragt nur das `__doc__`-Attribut der Klasse ab.

Verfasst: Mittwoch 21. Februar 2007, 18:44
von nkoehring
was ist mit den """-Kommentaren (wie man sie auch immer gleich noch nennt)

also:

Code: Alles auswählen

class Foo:
    """ diese Klasse tut ihren Dienst...
    und das wollte ich hiermit dokumentieren """

    def __init__(self):
        #etc

Verfasst: Mittwoch 21. Februar 2007, 18:56
von mq
nkoehring hat geschrieben:was ist mit den """-Kommentaren (wie man sie auch immer gleich noch nennt)
Man nennt sie Docstrings :D

Verfasst: Mittwoch 21. Februar 2007, 19:34
von nkoehring
Hach... genau :D

Und das klingt doch ziemlich nach Documentation, nicht war :roll:

Verfasst: Mittwoch 21. Februar 2007, 19:54
von BlackJack
Lies die Frage nochmal. Es geht darum das ws gerne den Docstring eines *Objekts* und nicht den von der *Klasse des Objekts* mit `help()` haben möchte.

Verfasst: Mittwoch 21. Februar 2007, 20:04
von nkoehring
:oops: ...naja, da hab ich wohl nicht ganz so akribisch gelesen :?