我在PyCharm中有一个Python项目,我想从我的Python代码和文档字符串中自动生成API文档(以HTML的形式)。
根据this page,有许多工具可以生成Python API文档:
该页面还注意到以下工具“流程文档”:
DocUtils和Sphinx可以用来{生成格式化的API文档“PyCharm documentation says。但是,这似乎不正确,因为their configuration indicates这些工具只处理*.rst
个文件,而不处理*.py
个文件。
我的问题是:我可以使用PyCharm的DocUtils或Sphinx功能生成API文档吗?
如果不这样,我可以使用PyCharm的任何功能来执行此操作吗?
如果做错了,是否有任何工具可以与PyCharm很好地集成?
答案 0 :(得分:3)
我也简单地发现了这个问题:
我的问题是:我可以使用PyCharm的DocUtils或Sphinx功能生成API文档吗?
没有。但是,您可以使用PyCharm快速查看文档ctrl + Q,它将很好地格式化链接,表等。
如果不这样,我可以使用PyCharm的任何功能来执行此操作吗?
实际上,PyCharm只能为函数和方法插入文档存根,但是它无法执行api发现来自动注释它无法创建的第一个文档存根。
如果做错了,是否有任何工具可以与PyCharm很好地集成?
是:) sphinx-apidoc这是一个可以自动从代码中创建第一个文档的工具。还有一些鲜为人知的autoapi
你只需指向根目录,瞧它甚至可以包含没有doc字符串的成员。它实际上只是使用自动模块语法创建一个简单的第一个文档。之后,您可以从PyCharm运行sphinx任务,并且您有一个代码文档,您甚至可以使用sphinx_rtd_theme
之类的主题使其看起来非常好。
实施例:
sphinx-apidoc -o source/ ../
假设您在项目中创建了一个doc文件夹,然后使用cd doc
并使用sphinx-quickstart
上述命令转到父目录以发现任何源文件并记录它们。结果存储在<project>/doc/source
文件夹中。在其他文件中,将有一个modules.rst将所有自动生成的文件拉到一起。
然后在index.rst中,在
.. toctree::
...
source/modules