如何在 Python 中从文档字符串创建文档?
要从文档字符串创建文档,我们可以使用以下包和模块 -
- pydoc
- epydoc
- Sphinx
让我们一一了解它们——
pydoc
pydoc 模块可以从 Python 源代码中的文档字符串创建 HTML。
pydoc 模块从 Python 模块自动生成文档。文档可以在控制台上显示为文本页面、提供给 Web 浏览器或保存到 HTML 文件。
对于模块、类、函数和方法,显示的文档派生自对象的文档字符串(即 __doc__ 属性),并递归派生自其可记录成员。如果没有文档字符串,pydoc 会尝试从源文件中类、函数或方法定义正上方或模块顶部的注释行块中获取描述(请参阅 inspect.getcomments())。
内置函数 help() 在交互式解释器中调用在线帮助系统,该系统使用 pydoc 在控制台上将其文档生成为文本。通过在操作系统的命令提示符下将 pydoc 作为脚本运行,也可以从 Python 解释器外部查看相同的文本文档。例如,运行 -
pydoc sys
在 shell 提示符下将显示 sys 模块上的文档,其样式类似于 Unix man 命令显示的手册页。pydoc 的参数可以是函数、模块或包的名称,也可以是对模块或包中的模块中的类、方法或函数的虚线引用。
您还可以使用 pydoc 在本地计算机上启动 HTTP 服务器,该服务器将为访问的 Web 浏览器提供文档。
-
pydoc -n <主机名> 将启动服务器侦听给定的主机名。默认情况下,主机名为“localhost”,但如果您希望从其他计算机访问服务器,则可能需要更改服务器响应的主机名。
-
pydoc -b 将启动服务器,并另外打开一个 Web 浏览器到模块索引页。
epydoc
使用 epydoc 包纯粹从文档字符串创建 API 文档。
Epydoc是一个工具,用于根据Python模块的文档字符串生成API文档。有关 epydoc 输出的示例,请参阅 epydoc 本身的 API 文档(html、pdf)。一种名为 epytext 的轻量级标记语言可用于格式化文档字符串,并添加有关特定字段(如参数和实例变量)的信息。Epydoc 还可以理解用 reStructuredText、Javadoc 和 plaintex 编写的文档字符串。
Sphinx
Sphinx使创建智能和美观的文档变得容易。以下是功能-
-
输出格式 - HTML(包括Windows HTML帮助),LaTeX(用于可打印的PDF版本),ePub,Texinfo,手册页,纯文本。
-
广泛的交叉引用 - 函数、类、引文、词汇表术语和类似信息的语义标记和自动链接。
-
分层结构 - 文档树的简单定义,具有与兄弟姐妹,父母和孩子的自动链接。
-
自动索引 − 通用索引以及特定于语言的模块索引。
-
代码处理 - 使用Pygments荧光笔自动突出显示。
-
扩展 - 自动测试代码片段,通过内置扩展包含来自Python模块的文档字符串,以及通过第三方扩展的更多功能。
-
主题 - 通过创建主题来修改输出的外观,并重用许多第三方主题。
-
贡献的扩展 - 用户贡献的数十个扩展;它们中的大多数都可以从PyPI安装。
相关文章
- Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接
- [Python] Create a Log for your Python application
- 【Python五篇慢慢弹(4)】模块异常谈python
- 【Python五篇慢慢弹(3)】函数修行知python
- 【Python五篇慢慢弹】快速上手学python
- Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接
- 【python cookbook】【数据结构与算法】13.通过公共键对字典列表排序
- 华为校招机试 - 单词重量(Java & JS & Python)
- Python语言学习:在python中,如何获取变量的本身字符串名字而非其值/内容及其应用(在代码中如何查找同值的所有变量名)
- Python编程语言学习:python语言中快速查询python自带模块&函数的用法及其属性方法、如何查询某个函数&关键词的用法、输出一个类或者实例化对象的所有属性和方法名之详细攻略
- Python语言编程学习:利用python输出当前python版本、MSC版本型号
- Python:利用python编程实现三维图像绘制展示(六面体旋转、三维球柱状体、下雪场景等)
- 已解决2.Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and wi
- 清华教授用时一月亲自整理,Python超详细的基础笔记
- 〖Python接口自动化测试实战篇⑧〗- 小案例 - 使用python实现接口请求 [查询天行数据]
- 从零开始学python | 什么是Python JSON?
- 万字教程:Python Word 文档自动化
- 【华为机试真题 Python实现】金字塔
- Python编程:python-attrs模块的简单使用
- Python:mysql-connector-python模块对MySQL数据库进行增删改查
- Python标准库:内置函数str(object='') str(object=b'', encoding='utf-8', errors='strict')
- 【Python】Visual Studio Code 安装&&使用 hello python~~~~
- 【Python基础】python爬虫之异步网络爬虫ǃ
- 〖Python自动化办公篇⑧〗- word文件自动化 - 创建并生成 word 文档
- selenium python 自定义类调用,同一级目录和跨目录
- Web自动化——测试实战( 编写京东搜索脚本python+selenium框架)(四)