繁体   English   中英

没有子模块的 Sphinx Autodoc

[英]Sphinx Autodoc Without Submodules

我正在开发一个 Python package 允许用户像这样导入它的功能:

import mymodule
mymodule.afunction()

我正在用 sphinx 记录代码。 我首先运行sphinx-quickstart ,然后将conf.py更改为包含sys.path.insert(0, os.path.abspath('../../src/mymodule')) 然后我运行sphinx-apidoc -f -o source../src/mymodulemake html 目录结构是这样的:

├── doc
│   ├── Makefile
│   ├── build
│   ├── make.bat
│   └── source
│       ├── _static
│       ├── _templates
│       ├── conf.py
│       ├── index.rst
│       ├── modules.rst
│       └── mymodule.rst
└── src
    └── mymodule
        ├── __init__.py
        └── modulecode.py

output 列出了“mymodule.modulecode”子模块。 但是由于我的__init__py ,用户没有明确导入modulecode

在此处输入图像描述

是否有一种自动化的方法可以使 sphinx 文档列表 function mymodule.afunction() (由用户访问),而不是mymodule.modulecode.afunction() (用户不调用)?

感谢 mzjn 对我原来的问题的有用评论,正如评论中所讨论的:我需要做两件事:

  1. 添加__all__=[list of defined functions]到我的__init__.py
  2. mymodule.rst中删除整个mymodule.modulecode module部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM