可以使用 autodoc 从 docstring 执行代码吗?
Can autodoc be used to execute code from docstring?
当使用 Sphinx 和 autodoc 记录一个 Python 项目时,您可以使用 :Example:
在您的 module/class/function 文档字符串中包含一个代码示例,Sphinx 会友好地为您突出显示语法.好像是这样。
>>> rng = Range(0, 1000)
>>> rng
[0, 1000)
>>> len(rng)
1000
>>> rng.start = 500
>>> rng.start
500
>>> rng.end
1000
>>>
我从 Python 解释器复制并粘贴了这个。有没有办法让 Sphinx 或 autodoc 执行代码并自动捕获文档的输出?
我主要担心的是复制粘贴 code/output 与实际的当前代码行为不同步。
标准库包括doctest
,它可以从文本文件或文档字符串中识别、执行和验证交互式示例。
当使用 Sphinx 和 autodoc 记录一个 Python 项目时,您可以使用 :Example:
在您的 module/class/function 文档字符串中包含一个代码示例,Sphinx 会友好地为您突出显示语法.好像是这样。
>>> rng = Range(0, 1000)
>>> rng
[0, 1000)
>>> len(rng)
1000
>>> rng.start = 500
>>> rng.start
500
>>> rng.end
1000
>>>
我从 Python 解释器复制并粘贴了这个。有没有办法让 Sphinx 或 autodoc 执行代码并自动捕获文档的输出?
我主要担心的是复制粘贴 code/output 与实际的当前代码行为不同步。
标准库包括doctest
,它可以从文本文件或文档字符串中识别、执行和验证交互式示例。