我正在编写一些文档,其中列出了duck-typed对象必须具有的属性以实现特定接口。我尝试过这样的事情:
List of required attributes:
.. py:attribute:: x
The x-coordinate, as a :py:class:`float`.
.. py:attribute:: y
The y-coordinate, as a :py:class:`float`.
我希望获得带有描述的属性列表,但文档最终会使用包含先前.. py:currentmodule
指令的名称而不是普通名称。因此,我不仅仅是x
,而是my.current.module.x
。
有没有办法做以下任何一种情况:
.. py:currentmodule::
。我尝试将其设置为空字符串以及.
,但这只是生成警告并保持使用先前值。我更喜欢选项#2,因为我实际上有文档中当前模块中对象的链接,所以如果没有实际更改当前模块,那么明确这些属性不在模块中会很好。
目前,我的解决方法是暂时设置.. py:currentmodule:: duck
,并在该细分后恢复。
我还尝试将属性文档编写为.. py:attribute:: ~x
,.. py:attribute:: !x
和.. py:attribute:: .x
。所有情况都包括名称中的特殊字符,前两个不能生成属性的锚点。