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.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Запитайте мені питання про цей предмет
Сумаризуйте цей розділ
Покажіть реальні приклади
Awesome!
Completion rate improved to 11.11
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.
Дякуємо за ваш відгук!