[英]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.