NotImplemented is a non-exception object, and NotImplementedError is an exception object.
>>> NotImplemented NotImplemented >>> NotImplementedError <type 'exceptions.NotImplementedError'> >>> type(NotImplemented) <type 'NotImplementedType'> >>> type(NotImplementedError) <type 'type'>
TypeError is obtained if NotImplemented is thrown, because it is not an exception. Throwing a NotImplementedError will normally catch the exception.
>>> raise NotImplemented
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
raise NotImplemented
TypeError: exceptions must be old-style classes or derived from BaseException, not NotImplementedType
>>> raise NotImplementedError
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
raise NotImplementedError
NotImplementedError
Why is there a NotImplemented and a NotImplementedError?
Sorting a list in Python often USES a comparison operation such as ___ ().
Sometimes Python’s internal algorithms choose another way to determine the comparison result, or simply choose a default result. If an exception is thrown, the sorting operation will be broken. Therefore, it will not be thrown if NotImplemented is used, thus Python can try other methods.
The NotImplemented object sends a signal to the runtime environment to tell it that if the current operation fails, it should check out other feasible methods. For example, in the expression a == b, if a. ___, eq__(b) returns NotImplemented, Python will try B. ___ (a). If the call to the method of B/eq__ can return True or False, the expression is successful. If b.__eq__(a) also fails, Python continues to try other methods, such as using! = to compare.
ref:http://www.cnblogs.com/ifantastic/p/3682268.html
Read More:
- python root:code for Hash MD5 was not found. Error
- Python TypeError: not all arguments converted during string formatting [Solved]
- urlopen error unknown url type:httpë/HTTP Error 400:Bad Request
- Type error: sequence item 0: expected STR instance, int found
- Python error prompt: typeerror: ‘builtin’_ function_ or_ method‘ object is not subscriptable
- Tensorflow import error: DLL load failed: the specified module could not be found
- Typeerror: UFUNC ‘isn’t supported for the input types
- tensorflow import error: DLL load failed: The specified module could not be found (DLL load failed: The specified module could not be found)
- Exception ignored in: bound method basesession__ del__ Of
- Pychar console error: xmlrpc.client.Fault : Fault 0: ‘ java.lang.NullPointerException
- You set the variable “no_check_targets“ here and it was unused before it went out of scope.
- TypeError: int() can’t convert non-string with explicit base
- data argument can’t be an iterator
- Typeerror: object of type ‘response’ has no len() why?
- Use xx [‘xx ‘] = XX to set field value or does not support field: XXX
- Detailed explanation of Python__ new__() method
- Resolve the error raise importerror, str (MSG) + ‘, please install the python TK package’ (valid for personal testing)
- Running Python 3.7 web.py Runtimeerror: generator raised stopiteration exception occurred during test
- Fatal Python error: initfsencoding: unable to load the file system codec
- TypeError: Required argument ‘mat‘ (pos 2) not found