我继承了一个相当大的代码库,我想为其创建html文档。由于它是用Python编写的,所以我决定使用sphinx,因为代码的用户习惯于使用sphinx创建的python文档的设计和功能。
我使用命令sphinx-apidoc
自动创建rst文件。我将模块路径导入sys.path
,以便sphinx可以找到代码。
到目前为止一切顺利。但是,当我尝试使用命令make html
创建html时,会弹出许多回溯,并且代码库中的一些示例似乎已被执行。可能是什么原因以及如何防止这种情况发生?
答案 0 :(得分:10)
使用autodoc时,Sphinx会导入已记录的模块,因此会执行所有模块级代码。每次你这样做都会发生这种情况"制作html"。在这个意义上,Sphinx确实运行了#34;你的代码。
您可能需要以不同的方式组织代码以使错误消失(将模块级代码移动到函数中)。有关可能发生的情况的示例,请参阅this question。
这是我的猜测,但可能不是整个故事。没有额外信息,很难说更多。
答案 1 :(得分:3)
{{1}}
这样就不会运行您的代码了。