【发布时间】:2016-07-16 04:27:14
【问题描述】:
我想在我的 sphinx 生成的文档中包含 __init__() 的文档字符串。
我正在关注the accepted answer to this stackoverflow question 为autodoc-skip-member 添加处理程序,但仍然无法看到我的__init__() 文档。 if name == "__init__": 块内的跟踪代码显示我正在点击该代码。
凭直觉,我从我的extensions 定义中删除了'sphinx.ext.napoleon',离开了
extensions = [
'sphinx.ext.autodoc',
# 'sphinx.ext.napoleon',
]
然后我可以看到__init__() 文档。
我在the napoleon documentation 中看到的唯一似乎相关的是napoleon_include_special_with_doc,它说默认为True。在conf.py 中将其显式设置为True 似乎没有任何改变。
ETA:如果我添加以下方法:
def __blah__(self):
'''blah blah blah'''
print self.__class__
我在生成的文档中看到了__blah__()。
- 如果我将
__blah__的名称更改为__repr__或__str__, 我在生成的文档中看到了它们。 - 如果我注释掉现有的
__init__并更改__blah__到__init__我没看到。
所以它似乎特定于__init__()。
这是一个已知问题吗?在使用拿破仑时还有其他方法可以控制吗?
【问题讨论】:
标签: python python-sphinx sphinx-napoleon