Ich habe ein Modul, das etwas geht:Aufschalten Funktionsdeklaration in Autodoc für Sphinx
#!/usr/bin/env python
#: Documentation here.
#: blah blah blah
foobar = r'Some really long regex here.'
def myfunc(val=foobar):
'''Blah blah blah'''
pass
... und ich habe eine .rst
-Datei, die etwas geht:
:mod:`my_module` Module
-----------------------
..automodule:: my_module
:members:
:private-members:
:show-inheritance:
Wenn Ich erstelle die Dokumentation, ich bekomme eine HTML-Datei mit einem Ausschnitt, der so lautet:
mymodule.foobar. foobar = 'Einige absurder lang und hässlich regex hier'
Zusätzliche Dokumentation hier
mymodule. myfunc (val = 'Einige absurder lang und hässlich regex hier')
blablabla
Basierend auf dieser stackoverflow post, ich dachte, dass ich es durch Ändern mein Modul ändern könnte:
#!/usr/bin/env python
#: .. data:: my_module.foobar
#: Extra documentation here
foobar = 'Some really long regex here.'
def myfunc(val=foobar):
'''.. function:: my_module.myfunc(val=foobar)
Blah blah blah'''
pass
... aber das hat nicht den Trick gemacht, und nur die Signatur, die ich wollte unter dem hässlichen als Teil des Körpers. Weiß jemand, wie ich das richtig übersteuern kann?
(Ich verwende Sphinx v1.1.3, btw.)
Können Sie dies für Klassen (genauer gesagt, ihre Konstruktoren) tun? – detly
Das ist cool, ich öffnete eine ganz neue Frage darüber (http://stackoverflow.com/questions/13786030/how-do-ioverride-constructor-parameters-in-sphinx-with-autodoc). – detly
Das Überschreiben der Signatur in der ersten Zeile der Doc-Zeichenfolge ist wirklich nützlich, danke für den Tipp! – brianmearns