Sphinx 找不到模块,但 Python 可以

Luc*_*uro 5 python module package python-sphinx

Sphinx,Python 文档生成器,似乎不理解我的模块/包。在 上make clean && make html,当运行此代码时:from statstuff import statistics as stats,它输出:

导入错误:没有名为“statstuff”的模块

我还尝试将模块引用为from . import statistics as stats,因为这些模块位于同一个包中,但 Sphinx 输出:

系统错误:父模块“”未加载,无法执行相对导入

此外,考虑到文档文件夹与 statstuff 文件夹共享其父文件夹,config.py似乎已正确配置为。sys.path.insert(0, os.path.abspath('../statstuff/'))

无论如何,这里是包含文件的存储库:https://github.com/lucasmauro/statstuff

问题出现在statstuff/regression.py第 2 行和第 3 行: https: //github.com/lucasmauro/statstuff/blob/master/statstuff/regression.py

代码在 Python 解释器中正常运行,但 Sphinx 无法在编写代码(或配置)时找到模块。

有谁知道如何解决这个问题?

确实非常感谢!

mzj*_*zjn 4

由于您的模块位于名为 的statstuff中,我建议如下:

  1. 在conf.py中添加上述 目录的路径:statstuffsys.path

    sys.path.insert(0, os.path.abspath('..'))
    
    Run Code Online (Sandbox Code Playgroud)
  2. 编辑automodule指令。改变

    .. automodule:: probability 
    
    Run Code Online (Sandbox Code Playgroud)

    .. automodule:: statstuff.probability
    
    Run Code Online (Sandbox Code Playgroud)

    等等。