Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Additional Elements | Handling Structure
Error Handling in Python

bookAdditional Elements

The full handle structure has 2 additional elements: else and finally.

Look at the example:

1234567891011121314151617181920
def divide_numbers(a, b): try: result = a / b except ZeroDivisionError as error: print("(except) ZeroDivisionError: Cannot divide by zero.") except TypeError as error: print("(except) TypeError: Invalid data type for division.") else: print("(else) Division result:", result) finally: print("(finally) Finally block executed.") # Example usage: print("=== CASE 1 ===") divide_numbers(10, 2) # This will execute the else block and finally block. print("=== CASE 2 ===") divide_numbers(5, 0) # This will raise a ZeroDivisionError, execute the except block, and the finally block. print("=== CASE 3 ===") divide_numbers(10, "two") # This will raise a TypeError, execute the except block, and the finally block.
copy

As you can see, the code handles different exceptions appropriately and ensures:

  • the else block is executed when errors are not raised;
  • the finally block is executed in all cases.

Handle Structure Diagram

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 6

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Awesome!

Completion rate improved to 11.11

bookAdditional Elements

Pyyhkäise näyttääksesi valikon

The full handle structure has 2 additional elements: else and finally.

Look at the example:

1234567891011121314151617181920
def divide_numbers(a, b): try: result = a / b except ZeroDivisionError as error: print("(except) ZeroDivisionError: Cannot divide by zero.") except TypeError as error: print("(except) TypeError: Invalid data type for division.") else: print("(else) Division result:", result) finally: print("(finally) Finally block executed.") # Example usage: print("=== CASE 1 ===") divide_numbers(10, 2) # This will execute the else block and finally block. print("=== CASE 2 ===") divide_numbers(5, 0) # This will raise a ZeroDivisionError, execute the except block, and the finally block. print("=== CASE 3 ===") divide_numbers(10, "two") # This will raise a TypeError, execute the except block, and the finally block.
copy

As you can see, the code handles different exceptions appropriately and ensures:

  • the else block is executed when errors are not raised;
  • the finally block is executed in all cases.

Handle Structure Diagram

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 6
some-alt