Χειρισμός σφαλμάτων και εξαιρέσεις σε Python

Στο Python, ο χειρισμός σφαλμάτων και εξαιρέσεων είναι ουσιαστικό μέρος της διαδικασίας προγραμματισμού. Κατά την εκτέλεση ενός προγράμματος, ενδέχεται να προκύψουν απροσδόκητα σφάλματα και εξαιρέσεις. Ο χειρισμός σφαλμάτων και εξαιρέσεων επιτρέπει στο πρόγραμμα να χειρίζεται και να αναφέρει αυτές τις απροσδόκητες καταστάσεις με ευελιξία και ευανάγνωστο τρόπο.

 

Χειρισμός κοινών σφαλμάτων( Exception Handling)

Στο Python, χρησιμοποιούμε το try-except μπλοκ για να χειριστούμε κοινά σφάλματα. Η try-except δομή επιτρέπει στο πρόγραμμα να εκτελέσει ένα μπλοκ κώδικα στην try ενότητα και εάν παρουσιαστεί σφάλμα σε αυτό το μπλοκ, το πρόγραμμα θα μετακινηθεί στην except ενότητα για να χειριστεί αυτό το σφάλμα.

Παράδειγμα:

try:  
    # Attempt to perform an invalid division  
    result = 10 / 0  
except ZeroDivisionError:  
    print("Error: Cannot divide by zero.")  

 

Χειρισμός γενικών εξαιρέσεων

Εκτός από τον χειρισμό συγκεκριμένων τύπων σφαλμάτων, μπορούμε επίσης να χρησιμοποιήσουμε except χωρίς να καθορίσουμε συγκεκριμένο τύπο σφάλματος. Αυτό βοηθά στον χειρισμό γενικών εξαιρέσεων που δεν γνωρίζουμε εκ των προτέρων.

Παράδειγμα:

try:  
    # Attempt to perform an invalid division  
    result = 10 / 0  
except:  
    print("An error occurred.")  

 

Χειρισμός πολλαπλών τύπων εξαιρέσεων

Μπορούμε επίσης να χειριστούμε πολλούς διαφορετικούς τύπους σφαλμάτων στο ίδιο try-except μπλοκ χρησιμοποιώντας πολλαπλούς except όρους.

Παράδειγμα:

try:  
    # Attempt to open a non-existent file  
    file = open("myfile.txt", "r")  
    content = file.read()  
except FileNotFoundError:  
    print("Error: File not found.")  
except PermissionError:  
    print("Error: No permission to access the file.")  

 

Οι else και finally ρήτρες

  • Η else ρήτρα επιτρέπει την εκτέλεση ενός μπλοκ κώδικα όταν δεν υπάρχει σφάλμα στην try ενότητα.
  • Ο finally όρος επιτρέπει την εκτέλεση ενός μπλοκ κώδικα μετά την ολοκλήρωση των ενοτήτων try και. except

Παράδειγμα:

try:  
    num = int(input("Enter an integer: "))  
except ValueError:  
    print("Error: Not an integer.")  
else:  
    print("The number you entered is:", num)  
finally:  
    print("Program ends.")  

 

Ο χειρισμός σφαλμάτων και εξαιρέσεων Python καθιστά το πρόγραμμα πιο εύρωστο και αυξάνει τη σταθερότητά του. Όταν χειριζόμαστε σωστά τα σφάλματα, μπορούμε να παρέχουμε κατάλληλα μηνύματα ή να εκτελούμε τις ανάλογες ενέργειες όταν συμβαίνουν απροσδόκητες καταστάσεις.