Πίνακας περιεχομένων:
- 1Ανοίξτε ένα παράθυρο αρχείου Python.
- 2 Πληκτρολογήστε τον ακόλουθο κώδικα στο παράθυρο - πατήστε Enter μετά από κάθε γραμμή:
- Βλέπετε ένα παράθυρο Python Shell ανοιχτό. Η εφαρμογή σας ζητά να πληκτρολογήσετε έναν αριθμό μεταξύ 1 και 10.
- Η εφαρμογή εμφανίζει ένα μήνυμα σφάλματος.
- Η εφαρμογή δημιουργεί το ίδιο μήνυμα σφάλματος.
- Η εφαρμογή εξάγει το μήνυμα σφάλματος αναμενόμενης εμβέλειας. Ο χειρισμός εξαιρέσεων δεν εξαλείφει τα σφάλματα εύρους.Πρέπει να τα ελέγξετε ξεχωριστά.
- Αυτή τη φορά, η εφαρμογή αναφέρει τελικά ότι έχετε δώσει μια σωστή τιμή 7. Αν και φαίνεται ότι πολλή δουλειά για να εκτελέσετε αυτό το επίπεδο ελέγχου, δεν μπορείτε να είστε σίγουροι ότι η εφαρμογή σας λειτουργεί σωστά χωρίς αυτό.
- Η εφαρμογή δημιουργεί μια εξαίρεση KeyboardInterrupt. Επειδή αυτή η εξαίρεση δεν χειρίζεται, εξακολουθεί να είναι ένα πρόβλημα για τον χρήστη.
Βίντεο: From C to Python by Ross Rheingans-Yoo 2025
Ορισμένα πράγματα που αναπτύσσονται στην Python έχουν μια τρομερή συνήθεια να φτύνουν εξαιρέσεις όταν ο χρήστης εισάγει απροσδόκητες τιμές. Μέρος της λύσης είναι ο έλεγχος της εμβέλειας. Ωστόσο, ο έλεγχος εμβέλειας δεν ξεπερνά το πρόβλημα ενός χρήστη που πληκτρολογεί κείμενο όπως το Hello στη θέση μιας αναμενόμενης αριθμητικής τιμής. Ο χειρισμός εξαιρέσεων παρέχει μια πιο πολύπλοκη λύση στο πρόβλημα, όπως περιγράφεται στα παρακάτω βήματα.
1Ανοίξτε ένα παράθυρο αρχείου Python.
Εμφανίζεται ένας επεξεργαστής στον οποίο μπορείτε να πληκτρολογήσετε τον παράδειγμα κώδικα.
2 Πληκτρολογήστε τον ακόλουθο κώδικα στο παράθυρο - πατήστε Enter μετά από κάθε γραμμή:
δοκιμάστε: Value = int (είσοδος ("Πληκτρολογήστε έναν αριθμό μεταξύ 1 και 10:")) Εκτός από ValueError: αριθμός (μεταξύ 1 και 10!) αλλιώς: εάν (τιμή> 0) και (τιμή <= 10): print ("πληκτρολογήσατε: > Ο κώδικας μέσα στο μπλοκ δοκιμής έχει τις εξαιρέσεις του χειρίζεται. Σε αυτή την περίπτωση, ο χειρισμός της εξαίρεσης σημαίνει ότι παίρνετε είσοδο από τον χρήστη χρησιμοποιώντας τις int (input ()) κλήσεις. Αν υπάρχει κάποια εξαίρεση εκτός αυτού του μπλοκ, ο κώδικας δεν το χειρίζεται.
Το πεδίο εκτός από το πεδίο αναζητά μια συγκεκριμένη εξαίρεση στην περίπτωση αυτή: ValueError. Όταν ο χρήστης δημιουργεί μια εξαίρεση ValueError πληκτρολογώντας το στοιχείο Hello αντί αριθμητικής τιμής, εκτελείται αυτό το συγκεκριμένο τμήμα εξαιρέσεων. Αν ο χρήστης δημιουργούσε κάποια άλλη εξαίρεση, αυτό εκτός από το μπλοκ δεν θα το χειριζόταν.
3Επιλέξτε το Run → Run Module.
Βλέπετε ένα παράθυρο Python Shell ανοιχτό. Η εφαρμογή σας ζητά να πληκτρολογήσετε έναν αριθμό μεταξύ 1 και 10.
4Type Hello και πατήστε Enter.
Η εφαρμογή εμφανίζει ένα μήνυμα σφάλματος.
5 Επαναλάβετε τα βήματα 3 και 4, αλλά πληκτρολογήστε 5. 5 αντί για Hello.
Η εφαρμογή δημιουργεί το ίδιο μήνυμα σφάλματος.
6 Επαναλάβετε τα βήματα 3 και 4, αλλά πληκτρολογήστε 22 αντί για Hello.
Η εφαρμογή εξάγει το μήνυμα σφάλματος αναμενόμενης εμβέλειας. Ο χειρισμός εξαιρέσεων δεν εξαλείφει τα σφάλματα εύρους.Πρέπει να τα ελέγξετε ξεχωριστά.
7 Επαναλάβετε τα βήματα 3 και 4, αλλά πληκτρολογήστε 7 αντί για Hello.
Αυτή τη φορά, η εφαρμογή αναφέρει τελικά ότι έχετε δώσει μια σωστή τιμή 7. Αν και φαίνεται ότι πολλή δουλειά για να εκτελέσετε αυτό το επίπεδο ελέγχου, δεν μπορείτε να είστε σίγουροι ότι η εφαρμογή σας λειτουργεί σωστά χωρίς αυτό.
8 Επαναλάβετε τα βήματα 3 και 4, αλλά πατήστε Ctrl + C, Cmd + C ή την εναλλακτική λύση για την πλατφόρμα σας αντί να πληκτρολογήσετε κάτι.
Η εφαρμογή δημιουργεί μια εξαίρεση KeyboardInterrupt. Επειδή αυτή η εξαίρεση δεν χειρίζεται, εξακολουθεί να είναι ένα πρόβλημα για τον χρήστη.
