kes*_*mit 7 python python-sphinx autodoc numpydoc toctree
我正在使用带有 numpydoc 扩展和自动摘要的 sphinx。经过一些实验,我将以下选项添加到我的 conf.py 文件中。
autosummary_generate = True
numpydoc_show_class_members = False
Run Code Online (Sandbox Code Playgroud)
这为我引用的每个类提供了一个新文件,如下所示,它还创建了所有属性和方法的汇总表。
.. autosummary::
:toctree: generated/
:nosignatures:
MyClass
Run Code Online (Sandbox Code Playgroud)
问题是,虽然文档字符串的第一行有一个方法的摘要表,但方法的名称没有链接到任何内容。如何获取方法的文档字符串来创建自己的文件(或者至少在与类相同的文件中生成文档)?
首先,确保在您的 conf.py 文件中,字符串“sphinx.ext.autodoc”和“sphinx.ext.autosummary”位于扩展列表中。
其次,您可以在generate/目录中手动创建名为mymodule.MyClass.rst的文件,如下所示:
mymodule.MyClass
================
.. currentmodule:: mymodule
.. autoclass:: MyClass
Run Code Online (Sandbox Code Playgroud)
或者,如果您有很多类,您可以使用 sphinx-autogen 将其自动化。您可以从终端运行它(使用与conf.py文件相同的cd),如下所示:
sphinx-autogen *.rst