問題:
在Vim使用了syntastic后,編寫代碼時,可以對代碼錯誤和警告進行相對實時的了解,對編寫代碼有很大的幫助。同時這個插件和python-mode一起工作時,可以對python代碼的編寫提供指導的作用(其中有不少對代碼規范的提示),不過有的時候一些多余的警告總是讓人無所適從,如
~/test.py |7 col 1 error| W0401 'from parameters import *' used; unable to detect undefined names [pyflakes]
因為有的時候我們要引入的內容很多,沒有必要一個個列舉,最好的方法就是import *
,作為一個偏執的coder,必須向着開始“零警告”的代碼靠攏,對於上面的問題不能忍。
解決辦法:
對於pyflakes
的警告,如果想忽略,可以在代碼后加入注釋:
pass # NOQA
就可以去除警告,不過注意,#
一定要和前面的代碼空兩個空格,后面一定要有一個空格也就是這個樣子:
pass..#.NOQA
空格用.
表示,因為這個也是pep8要求的注釋規范。
感想
整個世界,瞬間清靜了。
這種讓編譯器或編輯器忽略警告的辦法在其它平台和其它語言中也有相關的支持,如:使用了pylint
,可以在項目上加入.pylint
的文件,對一個規則進行說明。C
語言中為了取消unused paremeter warning
,可以在參數前加入void
,如:
(void)param