如何在 属性 和 getter 的 sphinx 中添加类型提示
How to add typehint in sphinx for property with getter
我正在使用 sphinx 从文档字符串和类型提示生成“自动”文档。但是,我正在努力显示(在生成的文档中)属性 和 getter 的类型。
如果是简单的属性,我会得到所需的文档:
class Cls:
def __init__(self):
self.prop: int = 42
将生成此(所需)文档:
prop: int
在方法的情况下,我们将得到类似有用的结果:
class Cls:
def mth(self) -> int:
return 42
mth() → int
但是,如果我们想使用 getter(@property
装饰器),我无法在那里获取类型:
class Cls:
@property
def prop(self) -> int:
return 42
属性 prop
注意没有类型提示
你知道在最后一个案例中如何将类型提示添加到文档中吗?
这将在 sphinx 4 中修复。参见 this PR and this issue。
Sphinx 4 尚未发布,但已经有 4.0.0b1 pre-release(现已发布)产生:
class Cls:
@property
def prop(self) -> int:
return 42
属性 prop: int
如果它不会对您造成任何影响,您可以只使用这个预发行版。
我正在使用 sphinx 从文档字符串和类型提示生成“自动”文档。但是,我正在努力显示(在生成的文档中)属性 和 getter 的类型。
如果是简单的属性,我会得到所需的文档:
class Cls:
def __init__(self):
self.prop: int = 42
将生成此(所需)文档:
prop: int
在方法的情况下,我们将得到类似有用的结果:
class Cls:
def mth(self) -> int:
return 42
mth() → int
但是,如果我们想使用 getter(@property
装饰器),我无法在那里获取类型:
class Cls:
@property
def prop(self) -> int:
return 42
属性 prop
注意没有类型提示
你知道在最后一个案例中如何将类型提示添加到文档中吗?
这将在 sphinx 4 中修复。参见 this PR and this issue。
Sphinx 4 尚未发布,但已经有 4.0.0b1 pre-release(现已发布)产生:
class Cls:
@property
def prop(self) -> int:
return 42
属性 prop: int
如果它不会对您造成任何影响,您可以只使用这个预发行版。