我正在使用 Sphinx(制作 HTML)从其函数的 reStructuredText 文档字符串自动生成 Python 3 模块的 HTML 文档。到目前为止,生成的 HTML 文档看起来不错,但是函数签名的参数类型(在源代码中作为“PEP484 类型提示”给出)未正确显示。 例如这是我的函数之一的 Sphinx 生成的 HTML 文档的一些示例输出:
static parse_from_file(filename: str) → list
Parses stuff from a text file.
Parameters: filename – the filepath of a textfile to be parsed
Returns: list of parsed elements
这就是我期望的样子:
static parse_from_file(filename)
Parses stuff from a text file.
Parameters: filename (str) – the filepath of a textfile to be parsed
Returns: list of parsed elements
Return type: list
这就是 Python 代码的实际样子:
def parse_from_file(filename: str) -> list:
"""Parses stuff from a text file.
:param filename: the filepath of a textfile to be parsed
:returns: list of parsed elements
"""
return []
如何让 Sphinx 正确显示 Python 3 类型提示?
变量。从版本 3.0 开始,您可以将其设置为
'description'
,它将类型提示显示为函数或方法的内容,并将其从签名中删除。所以只需将此行添加到您的conf.py
:
autodoc_typehints = "description"