Exception Hierarchy
Let's return to the OOP topic. The Exception is a class that has different instances.
12345678910111213print("=== FIRST CASE ===") try: "string" + 5 # string + int except TypeError as error: print("TypeError:", error) print("Is instance of TypeError:", isinstance(error, TypeError)) print("=== SECOND CASE ===") try: "string" / 10 # string / int except TypeError as error: print("TypeError:", error) print("Is instance of TypeError:", isinstance(error, TypeError))
In the example above, the error is a variable that contains the TypeError instance.
| First Case | Second Case | |
|---|---|---|
| Class | TypeError | TypeError |
| Action for exception | str + int | str / int |
| Message | can only concatenate str (not "int") to str | unsupported operand type(s) for /: 'str' and 'int' |
So, we have different instances of the TypeError class with different messages
Exception Hierarchy
The Exception classes have a class hierarchy:
Every Exception class is inherited from the BaseException class.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Spørg mig spørgsmål om dette emne
Opsummér dette kapitel
Vis virkelige eksempler
Awesome!
Completion rate improved to 11.11
Exception Hierarchy
Stryg for at vise menuen
Let's return to the OOP topic. The Exception is a class that has different instances.
12345678910111213print("=== FIRST CASE ===") try: "string" + 5 # string + int except TypeError as error: print("TypeError:", error) print("Is instance of TypeError:", isinstance(error, TypeError)) print("=== SECOND CASE ===") try: "string" / 10 # string / int except TypeError as error: print("TypeError:", error) print("Is instance of TypeError:", isinstance(error, TypeError))
In the example above, the error is a variable that contains the TypeError instance.
| First Case | Second Case | |
|---|---|---|
| Class | TypeError | TypeError |
| Action for exception | str + int | str / int |
| Message | can only concatenate str (not "int") to str | unsupported operand type(s) for /: 'str' and 'int' |
So, we have different instances of the TypeError class with different messages
Exception Hierarchy
The Exception classes have a class hierarchy:
Every Exception class is inherited from the BaseException class.
Tak for dine kommentarer!