我想在Python 2.6中定義我自己的(非常簡單的)異常類,但不管我如何做,我得到一些警告。在Python中定義異常沒有PyLint的「正確」方法抱怨
首先,最簡單的方法:
class MyException(Exception):
pass
這工作,但打印出在運行時發出警告:DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 OK,所以這是沒有辦法的辦法。我然後嘗試:
class MyException(Exception):
def __init__(self, message):
self.message = message
這也適用,但PyLint報告警告:W0231: MyException.__init__: __init__ method from base class 'Exception' is not called
。所以我試圖稱它爲:
class MyException(Exception):
def __init__(self, message):
super(Exception, self).__init__(message)
self.message = message
這也適用!但現在PyLint報告了一個錯誤:E1003: MyException.__init__: Bad first argument 'Exception' given to super class
我該怎麼做這麼簡單的事情,沒有任何警告?
'* lint'總是在警告方面犯了錯誤,因此會產生警告,您並不真正關心,並且可能會提示不謹慎的事情,例如添加未使用的方法來嘗試關閉它。讓任何皮棉不抱怨不是一個有價值的目標,理解它的所有抱怨是。 – msw 2010-05-24 23:45:40