Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Exception Hierarchy | Exception Usage
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
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.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Kysy minulta kysymyksiä tästä aiheesta

Tiivistä tämä luku

Näytä käytännön esimerkkejä

bookException Hierarchy

Pyyhkäise näyttääksesi valikon

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.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2
some-alt