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

Suggested prompts:

Kysy minulta kysymyksiä tästä aiheesta

Tiivistä tämä luku

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

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