Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre 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

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 6

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

bookAdditional Elements

Glissez pour afficher le menu

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

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 6
some-alt