Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.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 Sphinx autodoc是否可以在不记录命名空间的情况下记录namespace.module?_Python_Python Sphinx_Autodoc - Fatal编程技术网

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和其他项目)。我现在不得不忽略它们,但我对此并不满意,因为很难发现关于我自己代码的警告。。