python教程—自动生成所有Python包内容的文档-Python实用宝典

python教程—自动生成所有Python包内容的文档

我试图使用Sphinx自动生成代码库的基本文档。然而,我很难指示Sphinx递归地扫描我的文件。

我试图使用Sphinx自动生成代码的基本文档。然而,我很难指示Sphinx递归地扫描我的文件。

我有一个Python代码的文件夹结构如下:

    <workspace> src mypackage __init__.py subpackageA __init__.py submoduleA1 submoduleA2 subpackageB __init__.py submoduleB1 submoduleB2

我在< workspace >中运行了sphinx-quickstart,所以现在我的结构如下:

    <workspace> src mypackage __init__.py subpackageA __init__.py submoduleA1 submoduleA2 subpackageB __init__.py submoduleB1 submoduleB2 index.rst _build _static _templates

我读过快速入门教程http://sphinx.pocoo.org/tutorial.html < a href = " http://sphinx.pocoo.org/tutorial.html " > < / >,虽然我仍然试图理解的文档,这样的措辞让我担心,斯芬克斯假定我要手动为每个模块创建文档文件/类/函数在我的代码

但是,我确实注意到了“automodule”语句,并且我在quickstart中启用了autodoc,所以我希望大多数文档都能自动生成。我修改了conf.py,将src文件夹添加到sys。然后修改我的索引。首先使用自动调度。现在是下标。rst看起来像:

    Contents: .. toctree:: :maxdepth: 2 Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search` .. automodule:: alphabuyer :members:

我在子包中定义了几十个类和函数。然而,当我奔跑时:

    sphinx-build -b html . ./_build

报告:

    updating environment: 1 added, 0 changed, 0 removed

这似乎无法导入我包中的任何内容。查看生成的index.html时,在“Contents:”旁边没有显示任何内容。索引页只显示“mypackage (module)”,但单击它也显示它没有内容。

如何引导Sphinx递归地解析一个包,并为它遇到的每个类/方法/函数自动生成文档,而不必自己手动列出每个类?

回答

也许apigen.py可以提供帮助:https://github.com/nipy/nipy/tree/master/tools

这个工具的描述非常简单: http://comments.gmane.org/gmane.comp.python.sphinx.development/2912

或者更好的方法是使用 pdoc < / >。


更新:version 1.1中添加了一个Sphinx -apidoc实用程序。

​Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典

本文由 Python实用宝典 作者:Python实用宝典 发表,其版权均为 Python实用宝典 所有,文章内容系作者个人观点,不代表 Python实用宝典 对观点赞同或支持。如需转载,请注明文章来源。
0

发表评论