python – 防止Sphinx执行模块

我正在尝试使用Sphinx进行
python文档生成.问题是sphinx-build最终会执行模块/评估全局范围内的任何内容.它有这样做的原因吗?有没有人知道可以设置为禁用此标志的标志?

似乎Sphinx试图进行代码覆盖或类似的东西,这绝对不是我想要的.通常这不是问题,但是一组特定的模块非常特定于环境.

最佳答案 Sphinx评估全局范围内的所有内容,因为autodoc插件导入模块,导入模块会评估全局范围内的所有内容.

要阻止这种情况,要么:

>禁用autodoc插件(在sphinx配置文件中搜索autodoc),或
>使用if __name__ ==“__ main__”之类的内容保护您不希望执行的代码:do_stuff()

点赞