Python Sphinx autodoc是否可以在不记录命名空间的情况下记录namespace.module?
我正在使用的代码库是在Python Sphinx autodoc是否可以在不记录命名空间的情况下记录namespace.module?,python,python-sphinx,autodoc,Python,Python Sphinx,Autodoc,我正在使用的代码库是在命名空间下构建的。我负责名称空间。我的_项目,但我依赖于名称空间中的各种其他模块。有没有办法让Sphinx(使用autodoc)记录名称空间.my_项目,但忽略名称空间下的所有内容 我已经尝试添加我想要的模块index.rst: 。。目录树:: namespace.my_项目 这在最终文档中显示得很好,但在编译过程中,我仍然从名称空间的成员那里收到很多警告,我无法控制这些警告。没有太多选项,使用autodoc扩展,它将使用普通Python导入规则导入对象 此扩展可以导入
命名空间下构建的。我负责名称空间。我的_项目
,但我依赖于名称空间
中的各种其他模块。有没有办法让Sphinx(使用autodoc)记录名称空间.my_项目
,但忽略名称空间
下的所有内容
我已经尝试添加我想要的模块index.rst
:
。。目录树::
namespace.my_项目
这在最终文档中显示得很好,但在编译过程中,我仍然从名称空间的成员那里收到很多警告,我无法控制这些警告。没有太多选项,使用autodoc扩展,它将使用普通Python导入规则导入对象
此扩展可以导入您正在编写文档的模块,并以半自动的方式从docstring中拉入文档
因此,您必须选择使用仅导入所需内容的autodoc指令编写.rst
文件。从您的示例中,假设my_project
是以包的形式构建的,这可能相对简单,您可以编写:
。。automodule::namespace.my_项目
或者假设您在my\u项目中有两个不同的包
。。automodule::namespace.my_project.my_package1
.. automodule::namespace.my_project.my_package2
基本上,您只从您感兴趣的项目中导入了模块/对象。然后在中。。目录树::
指令您将只包括包含这些精心选择的指令的.rst
文件
但是,这确实有一些缺点,名称空间中所有未显式记录的对象都不会包含在索引中,并且不可交叉引用(除非使用创建空的.rst
声明)。但是,它们将以文本形式呈现,没有链接,并且假设没有潜在的Python错误,文档将在没有警告的情况下正常生成。这方面没有太多选项,使用autodoc扩展,它将使用正常的Python导入规则导入对象
此扩展可以导入您正在编写文档的模块,并以半自动的方式从docstring中拉入文档
因此,您必须选择使用仅导入所需内容的autodoc指令编写.rst
文件。从您的示例中,假设my_project
是以包的形式构建的,这可能相对简单,您可以编写:
。。automodule::namespace.my_项目
或者假设您在my\u项目中有两个不同的包
。。automodule::namespace.my_project.my_package1
.. automodule::namespace.my_project.my_package2
基本上,您只从您感兴趣的项目中导入了模块/对象。然后在中。。目录树::
指令您将只包括包含这些精心选择的指令的.rst
文件
但是,这确实有一些缺点,名称空间中所有未显式记录的对象都不会包含在索引中,并且不可交叉引用(除非使用创建空的.rst
声明)。但是,它们将以文本形式呈现,没有链接,并且假设没有潜在的Python错误,文档将在没有警告的情况下正常生成。警告是关于什么的?你不能忽略它们吗?因为名称空间中的其他项目使用不同的sphinx设置,我在尝试记录它们时收到警告(不确认numpydoc和其他项目)。我现在不得不忽略它们,但我对此并不满意,因为很难发现关于我自己代码的警告..这些警告是关于什么的?你不能忽略它们吗?因为名称空间中的其他项目使用不同的sphinx设置,我在尝试记录它们时收到警告(不确认numpydoc和其他项目)。我现在不得不忽略它们,但我对此并不满意,因为很难发现关于我自己代码的警告。。