Pregunta

He instalado Sphinx con el fin de documentar algunos módulos de Python y la clase que estoy trabajando. Mientras que el lenguaje de marcado se ve muy bien, no he logrado auto-documento un código Python.

Básicamente, tengo el siguiente módulo de Python:

SegLib.py

Y una clase llamada Seg en ella. Me gustaría mostrar las cadenas de documentación de la clase y el módulo dentro del documento esfinge generado, y añadir texto con formato aún más a él.

Mi index.rst se ve así:

Contents:

.. toctree::
:maxdepth: 2

chapter1.rst

y 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`

Pero Seg solo se imprime en negrita, y no está vinculada a una documentación autogenerada de la clase.

Tratando:    Ver: Clase: Seg    Módulo: mod: 'SegLib'    Módulo: mod: 'SegLib.py'

No ayuda, también. Cualquier idea o buenas conexiones tutorial?

Editar: cambia SegLib a segmentos (gracias, iElectric!), Y cambió chapter1.rst a:     El mod: Módulo segments     --------------------------

.. automodule:: segments.segments

.. autoclass:: segments.segments.Seg

Sin embargo, no puede obtener la esfinge para documentar directamente a funciones dentro de una clase, o mejor - para añadir automáticamente todas las funciones dentro de una clase en el documento. Intentado

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

y consiguió:

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

Alguna idea de cómo autodocument las funciones y clases con un comando corto?

Udi

¿Fue útil?

Solución

Añadir a principios del archivo:

.. module:: SegLib

Trate de usar AUTOCLASS:. Directiva de la clase doc

Por cierto:. Nombres de los módulos deben ser lower_case

EDIT: he aprendido mucho de la lectura otros archivos de origen .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top