9

我在 PyCharm 中有一个 Python 项目,我想从我的 Python 代码和文档字符串中自动生成 API 文档(以 HTML 的形式)。

根据此页面,有许多生成 Python API 文档的工具:

  • 自动总结
  • 自动文档
  • 文档
  • PyDoc
  • 医生
  • 多氧

该页面还指出以下工具“处理文档”:

  • DocUtils
  • 狮身人面像

PyCharm 文档说DocUtils和 Sphinx 可用于“生成格式化的 API 文档”。但是,这似乎是不正确的,因为它们的配置表明这些工具只处理*.rst文件,而不是*.py文件。

我的问题是:我可以使用 PyCharm 的 DocUtils 或 Sphinx 功能来生成 API 文档吗?

如果做不到这一点,我可以使用 PyCharm 的任何功能来做到这一点吗?

如果做不到这一点,是否有任何工具可以与 PyCharm 很好地集成?

4

1 回答 1

5

简而言之,我也偶然发现了这个问题:

我的问题是:我可以使用 PyCharm 的 DocUtils 或 Sphinx 功能来生成 API 文档吗?

不可以。但是,您可以使用 PyCharm 快速查看文档 ctrl+Q,并且可以很好地使用链接、表格等进行格式化。

如果做不到这一点,我可以使用 PyCharm 的任何功能来做到这一点吗?

并非如此,PyCharm 只能为函数和方法插入文档存根,但它不能执行 api 发现来自动注释所有内容,它也不能创建第一个文档存根。

如果做不到这一点,是否有任何工具可以与 PyCharm 很好地集成?

是的 :) sphinx-apidoc它是一个可以从您的代码自动创建 rst 文档的工具。还有鲜为人知的autoapi

您只需指向根目录,瞧,它甚至可以包含没有文档字符串的成员。它实际上只是使用自动模块语法创建了一个简单的 rst 文档。之后,您可以从 PyCharm 运行 sphinx 任务,并且您有一个代码文档,您甚至可以使用一个主题sphinx_rtd_theme来让它看起来非常好。

示例: sphinx-apidoc -o source/ ../ 假设您在项目中创建了一个 doc 文件夹,然后cd doc使用sphinx-quickstart 上述命令进入父目录以发现任何源文件并记录它们。结果存储在<project>/doc/source文件夹中。在其他文件中,将有一个 modules.rst 将所有自动生成的文件拉在一起。

然后在您的 index.rst 中添加一行 .. toctree:: ... source/modules

编辑

最近我发现了一个新工具,我很快就切换到了,看到使用pdoc3是多么容易

于 2017-08-18T08:25:26.743 回答