2012-06-13 42 views
2

我正在試圖用獅身人面像做python文檔生成。問題是,sphinx-build最終會執行模塊/評估全局範圍內的任何內容。它有這樣的理由嗎?有沒有人知道可以設置爲禁用此標誌的國旗?阻止獅身人面像執行模塊

似乎斯芬克斯正在嘗試做代碼覆蓋或類似的東西,這絕對不是我想要的。通常情況下這不是一個問題,但是一組特定的模塊對於一個環境來說非常特殊。

+0

是的,當autodoc時,模塊是由sphinx導入的。它必須這樣做才能檢索文檔,類和函數信息等。您能否提供更多信息?它如何停止?什麼信息?等等。 – cedbeu

回答

6

Sphinx評估全局範圍內的所有內容,因爲autodoc插件導入模塊,導入模塊評估全局範圍內的所有內容。

要停止這一點,無論是:

  • 禁用插件車博士(在獅身人面像的配置文件搜索autodoc),或
  • 守護你不想與像if __name__ == "__main__": do_stuff()
  • 執行的代碼
+0

啊 - 是的,這很方便,因爲我所擁有的一些全局變量只與模塊相關,如果它作爲腳本運行的話。我可以將它們放入該聲明中。謝謝! – djp