[英]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/mymodule
并make 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 对我原来的问题的有用评论,正如评论中所讨论的:我需要做两件事:
__all__=[list of defined functions]
到我的__init__.py
mymodule.rst
中删除整个mymodule.modulecode module
部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.