Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Exception Hierarchy | Exception Usage
Error Handling in Python

bookException Hierarchy

Let's return to the OOP topic. The Exception is a class that has different instances.

12345678910111213
print("=== 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))
copy

In the example above, the error is a variable that contains the TypeError instance.

First CaseSecond Case
ClassTypeErrorTypeError
Action for exceptionstr + intstr / int
Messagecan only concatenate str (not "int") to strunsupported 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.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Posez-moi des questions sur ce sujet

Résumer ce chapitre

Afficher des exemples du monde réel

Awesome!

Completion rate improved to 11.11

bookException Hierarchy

Glissez pour afficher le menu

Let's return to the OOP topic. The Exception is a class that has different instances.

12345678910111213
print("=== 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))
copy

In the example above, the error is a variable that contains the TypeError instance.

First CaseSecond Case
ClassTypeErrorTypeError
Action for exceptionstr + intstr / int
Messagecan only concatenate str (not "int") to strunsupported 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.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 2
some-alt