我從我正在學習的課程中看到一些Python代碼,並且在某些測試特定功能支持的文件中看到錯誤,如果功能不存在,將不會嘗試使用它們。在我的情況下,我沒有可用的功能,所以條件之後的代碼不應該被執行。抑制PyDev中的不可達錯誤?
如果代碼實際到達,這些部分不應該顯示爲運行時錯誤。
例如:
def __call__(self, *args):
if not 'SIGALRM' in dir(signal):
return self.function(*args)
old = signal.signal(signal.SIGALRM, self.handle_timeout)
signal.alarm(self.timeout)
try:
result = self.function(*args)
finally:
signal.signal(signal.SIGALRM, old)
signal.alarm(0)
return result
我得到在體內Undefined variable from import: SIGALRM
,Undefined variable from import: alarm
等錯誤,但如果SIGALRM
不支持的方法將返回。
有沒有辦法在這些部分抑制錯誤?
這當然更清潔 - 雖然我最初只是尋找一種方法來抑制警告。這是我沒有寫的代碼。我現在只用了幾天Python,我不得不說我真的不是動態類型的粉絲,因爲這個問題以及我已經遇到的很多其他問題(即讓它變得困難或不可能IDE使你的代碼更有意義)。 –