Autodata:使用AutoDocTypeHights记录无签名的可调用文件

2024-04-29 08:24:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想记录一个模块的属性,它包含一个可调用的,更具体地说是一个类型。此属性用于存储某种类型,而不是该类型的别名

当我记录属性时,Sphinx默认呈现与其关联的类型的调用签名

Example 1

我希望它只是显示类型

Example 2

所以我做了一些挖掘并创建了这个MWE。它似乎归结为两个因素:使用autodoc-typehints和在类构造函数中使用带有类型提示的参数。取下其中一个可以得到上面的正确形式

# package.py
class Foo:
    def __init__(self, baz: int):
        pass

bar_type = Foo

# documentation
.. currentmodule:: package
.. autoclass:: Foo
.. autodata:: bar_type

# Sphinx conf.py
extensions = [
    'sphinx.ext.autodoc',
    'sphinx_autodoc_typehints',
]

我使用autodoc-typehints是因为其他原因,所以我很难摆脱它。如何避免在bar_type中显示签名


Tags: 模块py类型package属性footypesphinx