You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Sphinx的autofunction引入模块外文件的函数文档

解决方案

完全可以在保留use_Maudie.py存放位置的前提下实现需求,常用方案如下:

方案1:修改Sphinx配置添加导入路径(推荐,不侵入原项目结构)

你之前的写法失效核心原因是tutorial目录既没有被标记为Python包(无__init__.py),也不在Sphinx运行时的Python导入路径中,因此无法识别MAUDIE.tutorial这个模块路径。
你只需要修改Sphinx的配置文件conf.py(一般存放在docs/source/目录下,可根据你的实际目录层级调整):

  1. 在conf.py开头添加如下代码,将项目根目录和tutorial目录加入Python导入路径:
import os
import sys
# 假设conf.py路径为 docs/source/conf.py,相对路径根据你的实际结构调整
# 添加MAUDIE包的根目录到导入路径
sys.path.insert(0, os.path.abspath('../../'))
# 添加tutorial目录到导入路径
sys.path.insert(0, os.path.abspath('../../tutorial'))
  1. 修改你rst文档中的autodoc写法,直接引用use_Maudie模块即可:
.. currentmodule:: use_Maudie
.. autofunction:: use_maudie

方案2:将tutorial转为MAUDIE的正式子模块

如果你希望tutorial作为MAUDIE包的一部分对外暴露,可以直接在tutorial文件夹下新增一个空的__init__.py文件,此时MAUDIE.tutorial模块就会被Python正常识别,你最开始的写法即可直接生效。

内容的提问来源于stack exchange,提问作者user2954167

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 01:42:02