2014-08-27 89 views
2

我在python 2.7.3中使用pylint 0.27。 Pylint有一個已知的錯誤,它在分析具有.next()調用的代碼時命中。如在http://www.logilab.org/122793鏈接中給出的,它以給定的回溯失敗。在一段代碼或函數上禁用pylint執行

我不能改變我的Python和pylint的版本,但我想通過在一塊有.next()呼叫在我的代碼添加#pylint: MAGIC註釋代碼禁止pylint的來解決此問題。

我可以找到支持使用#pylint: skip-file禁用對文件的pylint檢查,但我有興趣在功能級別或行級別執行此操作。

還歡迎任何其他解決方法!

回答

1

不幸的是,您將無法在本地避免您遇到的錯誤。

人們可能期望在源代碼中找到有問題的代碼段,然後在本地禁用所涉及的消息,但這不起作用,因爲它仍然會運行。這是因爲在本地禁用消息時,運行檢測此消息的代碼,最終只發送消息。

但是,它可能工作,如果你全球禁用此消息(取決於它的實施方式)。在你的情況下,你不得不跳過整個「日誌」檢查器。

綜上所述,避免你回溯,你可以:

  • 本地使用pylint: skip-file,在這種情況下,每一個pylint的的功能將被激活,但整個問題的文件將被跳過

  • 全球禁用'日誌記錄'檢查器(--disable=logging),在這種情況下將檢查整個代碼(包括違規文件),但沒有「日誌記錄」檢查器消息

相關問題