是否可以在Sphinx生成的文档中为方法组添加文档字符串?
例如,我希望有类似的内容:
class MyClass():
"""Doc of the class"""
def __init__(self):
pass
"""----- The following part is about imports -----"""
def import_from_source_1(self):
"""Doc of import_from_source_1"""
pass
def import_from_source_2(self):
"""Doc of import_from_source_2"""
pass
"""----- The following part is about exports-----"""
def export_to_dest_1(self):
"""Doc of export_to_dest_1"""
pass
def export_to_dest_2(self):
"""Doc of export_to_dest_2"""
pass
预期的输出是:
MyClass
Doc of the class
----- The following part is about imports -----
import_from_source_1
Doc of import_from_source_1
import_from_source_2
Doc of import_from_source_2
----- The following part is about exports-----
export_to_dest_1
Doc of export_to_dest_1
export_to_dest_2
Doc of export_to_dest_2
请注意,我的目标不是(仅)对方法进行分组(如Group method docstrings in sphinx中所示),而是将文档字符串添加到组中。
答案 0 :(得分:1)
docstring是一个字符串文字,作为模块,函数,类或方法定义(https://python.org/dev/peps/pep-0257/#id15)中的第一个语句出现。你不能像问题中那样有“额外”的文档字符串。
但是,您可以使用automethod
:
.. currentmodule:: mymodule
.. autoclass:: MyClass
The following part is about imports
.. automethod:: import_from_source_1
.. automethod:: import_from_source_2
The following part is about exports
.. automethod:: export_to_dest_1
.. automethod:: export_to_dest_2