Python hat einen Singleton namens NotImplemented
.
Warum sollte jemand jemals zurückkehren wollen, NotImplemented
anstatt die NotImplementedError
Ausnahme auszulösen? Wird es nicht nur schwieriger sein, Fehler zu finden, z. B. Code, der ungültige Methoden ausführt?
a.__eq__(b)
NotImplemented zurückgegeben wird, kann er dann nicht genauso einfach NotImplementedError abfangen (und dann aufrufenb.__eq__(a)
oder was auch immer)?Weil sie unterschiedliche Anwendungsfälle haben.
Zitieren der Dokumente (Python 3.6):
Nicht implementiert
Ausnahme NotImplementedError
Siehe die Links für Details.
quelle
Ein Grund ist die Leistung. In einer Situation wie umfangreichen Vergleichen, in der Sie in kurzer Zeit viele Vorgänge ausführen können, kann das Einrichten und Behandeln vieler Ausnahmen viel länger dauern als die einfache Rückgabe eines
NotImplemented
Werts.quelle