raise NotImplemented should be raise NotImplementedError (F901)
NotImplemented
is a special value which should be returned by the binary special methods to indicate that the operation is not implemented with respect to the other type. Raise NotImplementedError
to indicate that a super-class method is not implemented and that child classes should implement it.
Anti-pattern
class BaseClass:
def abstract_method(self):
raise NotImplemented
Best practice
class BaseClass:
def abstract_method(self):
raise NotImplementedError