Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!

Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount

Διαχείριση Εξαιρέσεων


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

Η λύση της Python για τα σφάλματα είναι οι εξαιρέσεις. Ίσως έχετε δει μια εξαίρεση πριν.

Oops! Ξεχάσατε να εκχωρήσετε τιμή στη μεταβλητή 'a'.

Αλλά μερικές φορές δεν θέλετε οι εξαιρέσεις να σταματήσουν εντελώς το πρόγραμμα. Ίσως θέλετε να κάνετε κάτι ειδικό όταν εμφανίζεται μια εξαίρεση. Αυτό γίνεται σε ένα μπλοκ try/except.

Να ένα απλό παράδειγμα: Υποθέστε ότι κάνετε επανάληψη πάνω από μια λίστα. Χρειάζεται να επαναλάβετε πάνω από 20 αριθμούς, αλλά η λίστα είναι φτιαγμένη από είσοδο χρήστη και ίσως να μην έχει 20 αριθμούς σε αυτήν. Αφού φτάσετε στο τέλος της λίστας, απλά θέλετε οι υπόλοιποι αριθμοί να ερμηνεύονται ως 0. Δείτε πώς μπορείτε να το κάνετε αυτό:

Εκεί, δεν ήταν πολύ δύσκολο! Μπορείτε να το κάνετε αυτό με οποιαδήποτε εξαίρεση. Για περισσότερες λεπτομέρειες σχετικά με τον χειρισμό εξαιρέσεων, μην ψάξετε περισσότερο από την Python Docs

Άσκηση

Χειριστείτε όλες τις εξαιρέσεις! Θυμηθείτε τα προηγούμενα μαθήματα για να επιστρέψετε το επώνυμο του ηθοποιού.

# Setup actor = {"name": "John Cleese", "rank": "awesome"} # Function to modify!!! def get_last_name(): return actor["last_name"] # Test code get_last_name() print("All exceptions caught! Good job!") print("The actor's last name is %s" % get_last_name()) actor = {"name": "John Cleese", "rank": "awesome"} def get_last_name(): return actor["name"].split()[1] get_last_name() print("All exceptions caught! Good job!") print("The actor's last name is %s" % get_last_name()) test_output_contains("Cleese") test_output_contains("All exceptions caught! Good job!") test_output_contains("The actor's last name is Cleese") success_msg("Great work!")

This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!

Previous Tutorial Next Tutorial Take the Test
Copyright © learnpython.org. Read our Terms of Use and Privacy Policy