Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使apidoc在sphinx apidoc中使用包而不是模块_Python_Python Sphinx_Autodoc_Api Doc - Fatal编程技术网

Python 如何使apidoc在sphinx apidoc中使用包而不是模块

Python 如何使apidoc在sphinx apidoc中使用包而不是模块,python,python-sphinx,autodoc,api-doc,Python,Python Sphinx,Autodoc,Api Doc,我使用docstrings记录python代码,使用sphinx autodoc生成apidoc HTML。我的包的结构如下:mainpackage.subpackage.module,我希望apidocs以mainpackage.subpackage.Class的形式链接到模块中的类,而不是mainpackage.subpackage.module.Class。我的问题来自项目,例如:我在skmultilearn.base.base中有一个MLClassifierBase类,但我正在skmul

我使用docstrings记录python代码,使用sphinx autodoc生成apidoc HTML。我的包的结构如下:
mainpackage.subpackage.module
,我希望apidocs以
mainpackage.subpackage.Class
的形式链接到模块中的类,而不是
mainpackage.subpackage.module.Class
。我的问题来自项目,例如:我在
skmultilearn.base.base
中有一个
MLClassifierBase
类,但我正在
skmultilearn.base
中导入它,我希望sphinx生成的apidocs只将这个类用作
skmultilearn.base.MLClassifierBase
,而不是像现在这样
skmultilearn.base.base.MLClassifierBase
。有人能帮忙吗

我已经试过了:

  • conf.py
    per中设置
    add\u module\u names=False

  • 添加了
    ”.automodule::base“”
    skmultilearn/base/\uuu init\uuuu.py

  • skmultilearn/base/\uuuu init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu

  • 添加了
    。。自动类::base.MLClassifierBase
    到类文档


在从
MLClassifierBase
派生的每个类中,我仍然有一个base:skmultilearn.base.base.MLClassifierBase.MLClassifierBase。如何更改此设置?

我找到了一个解决方案:

"""
The :mod:`skmultilearn.base` module implements base
classifier classes for scikit-multilearn's multi-label classification.
"""

from .base import MLClassifierBase
from .problem_transformation import ProblemTransformationBase

__all__ = ["MLClassifierBase", 
           "ProblemTransformationBase"]
它为
base.ProblemTransformationBase
而不是
base.base.ProblemTransformationBase
生成文档。您需要在
\uuu init\uuuu.py
中将这三个元素放在一起:

  • :mod:
    的定义随处可见
  • 类的导入
  • all”中类的名称``
类似于和