我已经安装了Sphinx来记录我正在处理的一些python模块和类。虽然标记语言看起来非常好,但我还是没有设法自动记录python代码。
基本上,我有以下python模块:
SegLib.py
其中有一个名为Seg
的班级。我想在生成的sphinx文档中显示类和模块的文档字符串,并为其添加更多格式化文本。
我的index.rst
看起来像这样:
Contents:
.. toctree::
:maxdepth: 2
chapter1.rst
和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`
但Seg
只是以粗体显示,并未与该类的自动生成文档相关联。
尝试:
请参阅:class:Seg
模块:mod:'SegLib'
模块:mod:'SegLib.py'
也没有帮助。 任何想法或良好的教程链接?
编辑:将SegLib更改为细分(感谢,iElectric!),并将chapter1.rst更改为:
:mod:segments
模块
--------------------------
.. automodule:: segments.segments
.. autoclass:: segments.segments.Seg
但是,无法让sphinx直接记录类中的函数,或者更好 - 将类中的所有函数自动添加到文档中。试过
.. autofunction:: segments.segments.Seg.sid
得到了:
autodoc can't import/find function 'segments.segments.Seg.sid', it reported error: "No module named Seg"
如何使用简短命令自动记录函数和类?
乌迪
答案 0 :(得分:13)
添加到文件的开头:
.. module:: SegLib
尝试对类doc使用:autoclass:指令。
BTW:模块名称应为lower_case。