我正在尝试使用Sphinx生成Python文档。问题在于sphinx-build最终会执行模块/评估全局范围内的任何内容。这样做的原因是什么?有没有任何标志可以设置来禁用它?
看起来Sphinx似乎在尝试执行代码覆盖或类似的操作,这绝对不是我想要的。通常这不是问题,但特定一组模块非常特定于一个环境。
看起来Sphinx似乎在尝试执行代码覆盖或类似的操作,这绝对不是我想要的。通常这不是问题,但特定一组模块非常特定于一个环境。
Sphinx会在全局范围内对所有内容进行评估,因为autodoc插件需要导入模块,在导入模块时会对全局作用域进行评估。
为了停止这个过程,你可以选择:
autodoc
)或if __name__ == "__main__": do_stuff()
的代码来保护你不想执行的代码。