4

有什么方法可以排除模块的导入部分,然后用 sphinx-python 记录它?我有一个导入另一个包(其他不同项目)的模块,然后狮身人面像给出了这个错误:

""" 文件 "/usr/local/lib/python2.7/dist-packages/Sphinx-1.1.3-py2.7.egg/sphinx/ext/autodoc.py",第 321 行,在 import_object import (self. modname) 文件“/home/x/GitHub/project/mod_example1.py”,第 33 行,在 from other_pck import Klass, KlassStuff ImportError: No module named other_pck """

如果我在调用/导入打包 sphinx 的模块中注释导入部分,则可以执行 autodoc。我尝试了所有 sphinx autodoc 模块:autoclass、automodule 等......但是一旦尝试导入另一个包,结果总是相同的。

谢谢

4

1 回答 1

4

您正在以错误的方式解决问题。解决此问题的正确方法是让 Sphinx 了解您现有的其他包,因为 autodoc 功能必须导入 Python 包来扫描源代码。如果没有解决所有依赖项,就无法导入 Python 包,并且您不能从中挑选出几行源代码,因为这就是 Python 的构建方式(*)

可能的解决方案是

*)理论上你可以,但这超出了狮身人面像和这个问题的范围

于 2013-03-02T15:22:59.953 回答