[英]How to document a single private attribute with Sphinx autodoc?
我正在使用sphinx和autodoc扩展名从我的python模块中的文档字符串自动生成文档。
我目前正在使用automodule
指令来记录模块的所有公共成员
.. automodule::
:members:
我的模块还具有许多私有属性。 我想在文档中包括其中之一。
有没有办法告诉自动automodule
记录所有公共成员以及这个私有成员的文件? 我尝试使用:private-members:
选项,但这包括所有私有成员。 我也尝试过手动指定private属性,但是它没有记录任何公共成员。
.. automodule::
:members: _PRIVATE_ATTR
我想避免只为添加此私人成员而手动列出每个公共成员的方法。
有没有办法用autodoc做到这一点?
这是我期望的工作(使用Sphinx 1.8.3测试):
.. automodule:: yourmodule
:members:
:private-members: _PRIVATE_ATTR
但这并不完全有效。 如果给出了:private-members:
选项(带或不带参数),则包括所有私有成员(前提是它们具有文档字符串)。
:special-members:
选项接受参数,所以奇怪的是:private-members:
没有。
相反,您可以使用autodata
:
.. automodule:: yourmodule
:members:
.. autodata:: yourmodule._PRIVATE_ATTR
这是在autodata
内部的automodule
另一种替代方法:
.. automodule:: yourmodule
:members:
.. autodata:: _PRIVATE_ATTR
还有一个autoattribute
指令,但是它不适用于模块级的“数据成员”。 我发现可以使用autoattribute
来记录私有类属性 ,但是对于 autodata
和autoattribute
之间的确切区别, 该文档尚不清楚。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.