pydoc ---文档生成器和联机帮助系统

源代码: Lib/pydoc.py


这个 pydoc 模块自动从python模块生成文档。文档可以在控制台上以文本页面的形式显示,可以提供给Web浏览器,也可以保存到HTML文件中。

对于模块、类、函数和方法,显示的文档来自docstring(即 __doc__ 属性),以及其可记录成员的递归。如果没有docstring, pydoc 尝试从源文件中或模块顶部类、函数或方法定义上方的注释行块获取描述(请参见 inspect.getcomments()

内置功能 help() 调用交互式解释器中的联机帮助系统,该系统使用 pydoc 在控制台上以文本形式生成文档。通过运行python解释器,也可以从外部查看相同的文本文档。 pydoc 作为操作系统命令提示下的脚本。例如,运行:

pydoc sys

在shell提示下,将在 sys 模块,样式类似于Unix显示的手动页面 man 命令。参数 pydoc 可以是函数、模块或包的名称,也可以是对包中模块或模块内的类、方法或函数的点式引用。如果参数到 pydoc 看起来像一个路径(即,它包含操作系统的路径分隔符,如UNIX中的斜杠),并引用现有的python源文件,然后为该文件生成文档。

注解

为了找到对象及其文档, pydoc 导入要记录的模块。因此,在这种情况下,模块级的任何代码都将被执行。使用一个 if __name__ == '__main__': 保护仅在文件作为脚本而不是仅导入时执行代码。

将输出打印到控制台时, pydoc 尝试对输出分页以便于阅读。如果 PAGER 设置环境变量, pydoc 将其值用作分页程序。

指定一个 -w 参数前的标志将导致HTML文档写入当前目录中的文件,而不是在控制台上显示文本。

指定一个 -k 参数前的标志将以类似于Unix的方式搜索所有可用模块的概要行中作为参数给定的关键字。 man 命令。模块的概要行是其文档字符串的第一行。

您也可以使用 pydoc 启动本地计算机上的HTTP服务器,该服务器将为访问Web浏览器提供文档。 pydoc -p 1234 将在端口1234上启动HTTP服务器,允许您浏览文档 http://localhost:1234/ 在您的首选网络浏览器中。指定 0 因为端口号将选择任意未使用的端口。

pydoc -n <hostname> 将以给定的主机名启动服务器侦听。默认情况下,主机名为“localhost”,但如果希望从其他计算机访问服务器,则可能需要更改服务器响应的主机名。在开发过程中,如果您想从容器中运行pydoc,这尤其有用。

pydoc -b 将启动服务器并另外打开指向模块索引页的Web浏览器。每个服务页面的顶部都有一个导航栏,您可以在其中 Get 关于单个项目的帮助, 搜索 所有模块的摘要行中都有关键字,并转到 模块索引话题关键词 页。

什么时候? pydoc 生成文档,它使用当前环境和路径来定位模块。因此,调用 pydoc spam 精确地记录如果启动python解释器并键入 import spam .

假设核心模块的模块文档驻留在 https://docs.python.org/X.Y/library/ 在哪里? XY 是Python解释器的主要和次要版本号。可以通过设置 PYTHONDOCS 环境变量到另一个URL或包含库引用手册页的本地目录。

在 3.2 版更改: 增加了 -b 选择权。

在 3.3 版更改: 这个 -g 命令行选项已删除。

在 3.4 版更改: pydoc 现在使用 inspect.signature() 而不是 inspect.getfullargspec() 从可调用文件中提取签名信息。

在 3.7 版更改: 增加了 -n 选择权。