Sphinx 隐藏在 __init__.py 中导入的模块

问题描述 投票:0回答:1

我的包有一个结构,类似于以下内容:

├── README.md
├── __init__.py
├── module1
│   └── submodule1.py
│   └── submodule2.py
├── module2
│   ├── __init__.py
│   ├── _hiden_submodule1.py
│   ├── _hiden_submodule2.py
│   └── _hiden_submodule3.py

我已成功使用 sphinx 并使用自动摘要和递归选项从文档字符串中记录了所有内容:

.. autosummary::
   :toctree: _autosummary
   :template: custom-module-template.rst
   :recursive:

   mymodule

这为我提供了从模块到函数的非常好的目录树。

但是,

_hiden_submodules*.py
函数被导入到module2的
__init__.py
中:

from mymodule.module2._hiden_submodules1 import *
from mymodule.module2._hiden_submodules2 import *
from mymodule.module2._hiden_submodules3 import *

我希望这些函数作为 module2 的一部分直接出现在文档中,而不是

module2.hiden_submodules*
的一部分。我怎样才能做到这一点?

python python-sphinx docstring numpydoc autosummary
1个回答
0
投票

简单设置

autosummary_imported_members = True  # Also documents imports in __init__.py

在您的

conf.py
文件中。请参阅此处

© www.soinside.com 2019 - 2024. All rights reserved.