Frage

Ich habe installiert Sphinx um einige Python-Modulen und Klasse zu dokumentieren auf ich arbeite. Während die Markup-Sprache sieht sehr schön aus, habe ich nicht zu Auto-Dokument eines Python-Code verwaltet werden.

Grundsätzlich habe ich das folgende Python-Modul:

SegLib.py

Und Eine Klasse Seg darin genannt. Ich möchte die Docstrings der Klasse und Modul innerhalb des erzeugten Sphinx Dokument anzuzeigen, und fügen Sie weitere formatierten Text zu.

Meine index.rst sieht wie folgt aus:

Contents:

.. toctree::
:maxdepth: 2

chapter1.rst

und chapter1.rst:

This is a header
================
Some text, *italic text*, **bold text**

* bulleted list.  There needs to be a space right after the "*"
* item 2

.. note::
   This is a note.

See :class:`Seg`

Aber Seg ist nur fett gedruckt, und nicht auf eine automatisch generierte Dokumentation der Klasse verknüpft.

Der Versuch:    Siehe: Klasse: Seg    Modul: mod: 'SegLib'    Modul: mod: 'SegLib.py'

hat nicht geholfen, auch. Irgendwelche Ideen oder gute Tutorial Links?

Edit: geändert SegLib Segmente (danke, iElectric!), Und veränderte chapter1.rst an:     Die: mod: segments Modul     --------------------------

.. automodule:: segments.segments

.. autoclass:: segments.segments.Seg

Dennoch kann nicht Sphinx direkt Dokument Funktionen innerhalb einer Klasse zu erhalten, oder besser -, um automatisch alle Funktionen innerhalb einer Klasse in das Dokument einfügen. Versuche

.. autofunction:: segments.segments.Seg.sid

und bekam:

autodoc can't import/find function 'segments.segments.Seg.sid', it reported error: "No module named Seg"

Alle Ideen, wie die Funktionen und Klassen mit einem kurzen Befehl autodocument?

Udi

War es hilfreich?

Lösung

Fügen Sie an den Anfang der Datei:

.. module:: SegLib

Versuchen Sie es mit : autoclass:. Richtlinie für die Klasse doc

BTW:. Modulnamen sollten LOWER_CASE sein

EDIT: ich viel vom Lesen gelernt andere Quelldateien .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top