Den "richtigen" Weg zu definieren, die eine Ausnahme in Python ohne PyLint beschweren

Ich versuche zu definieren, meine eigenen (sehr einfachen) exception-Klasse in Python 2.6, aber egal wie ich es mache bekomme ich eine Warnung.

Erste, der einfachste Weg:

class MyException(Exception):
    pass

Diese arbeitet, aber druckt eine Warnung zur Laufzeit: DeprecationWarning: BaseException.Nachricht wurde als veraltet markiert, wie von Python 2.6 OK, also das ist nicht der Weg. Ich habe dann versucht:

class MyException(Exception):
    def __init__(self, message):
        self.message = message

Funktioniert das auch, aber PyLint meldet eine Warnung: W0231: MyException.__init__: __init__ method from base class 'Exception' is not called. Also versuchte ich nenne es:

class MyException(Exception):
    def __init__(self, message):
        super(Exception, self).__init__(message)
        self.message = message

So funktioniert es auch! Aber jetzt PyLint meldet einen Fehler: E1003: MyException.__init__: Bad first argument 'Exception' given to super class

Wie zur Hölle mache ich so eine einfache Sache, ohne jede Warnung?

  • *lint hat immer Fehler auf der Seite der Warnung, damit die Erzeugung von Warnungen, dass Sie nicht wirklich wichtig sind und können prompt die unvorsichtige Dinge zu tun, die wie add-verwendete Methoden zu versuchen, schließen Sie es. Irgendwelche Fusseln nicht beschweren, ist kein lohnendes Ziel, das Verständnis aller seiner Beschwerden ist.
InformationsquelleAutor EMP | 2010-05-24
Schreibe einen Kommentar