Python 如何生成类似numpy的文档?
我经常使用spyder和object inspector,我发现它作为即时帮助功能非常方便。有些模块似乎从这个功能中获益匪浅。例如,一个非常基本的numpy函数(numpy.absolute)在对象检查器中生成以下视图:Python 如何生成类似numpy的文档?,python,numpy,documentation,spyder,docstring,Python,Numpy,Documentation,Spyder,Docstring,我经常使用spyder和object inspector,我发现它作为即时帮助功能非常方便。有些模块似乎从这个功能中获益匪浅。例如,一个非常基本的numpy函数(numpy.absolute)在对象检查器中生成以下视图: 我想知道,当我在spyder中调用我的函数时,如何以这样的方式编写自己的模块,从而生成这样一个好的视图 要使您的文档呈现得像numpy文档一样好,您需要遵循标准。假设您有一个名为func的函数,它有两个参数,如下所示: def func(arg1, arg2): re
我想知道,当我在spyder中调用我的函数时,如何以这样的方式编写自己的模块,从而生成这样一个好的视图 要使您的文档呈现得像numpy文档一样好,您需要遵循标准。假设您有一个名为
func
的函数,它有两个参数,如下所示:
def func(arg1, arg2):
return True
func<Ctrl+i>(1, "a")
要向其添加文档,您需要在其定义(在Python world docstring中调用)下编写一个多行字符串,如下所示
def func(arg1, arg2):
"""Summary line.
Extended description of function.
Parameters
----------
arg1 : int
Description of arg1
arg2 : str
Description of arg2
Returns
-------
bool
Description of return value
Examples
--------
>>> func(1, "a")
True
"""
return True
Spyder所做的是,它接受这个纯文本描述,将其解析并呈现为html,最后在对象检查器中显示它
要查看它,只需在代码中的其他地方调用func
,然后按旁边的Ctrl+i,如下所示:
def func(arg1, arg2):
return True
func<Ctrl+i>(1, "a")
func(1,“a”)
当您在
func
旁边写左括号时,这也会自动显示。如果您的Python项目(或文件)已使用其他样式(如reStructuredText
或eByText
)进行了文档化或未进行文档化,则可以使用以下方法将docstring生成/转换为NumpyDoc
样式:
请注意,前面的命令在安装Pyment后运行,将生成应用于代码的修补程序
使用Numpydoc样式记录项目后,可以使用生成可读性好的Numpydoc样式文档 numpydoc绝对令人惊奇,更多的项目绝对应该采用它!几乎所有Python科学项目都使用它,但我认为Spyder的Object Inspector也鼓励更广泛的受众在其代码中采用它。您可以通过单击函数定义(不在别处调用)并按CTRL+Q(在Windows上)查看快速文档(在PyCharm中)。它可以在其他IDE或操作系统中类似地工作。干杯这个答案以前怎么没有被发现和更新?这就是我长久以来一直在寻找的东西。谢谢