Το μπλοκ else στην εξαίρεση των exceptions στην Python
Στην κατασκευή try-except μπορεί επίσης
να προστεθεί το μπλοκ else. Μια σημαντική
λεπτομέρεια είναι ότι ο κώδικας που τοποθετείται στο μπλοκ
else θα εκτελεστεί εάν μέχρι εκείνη τη στιγμή στην
try-except δεν πιαστεί καμία εξαίρεση.
Ας υποθέσουμε ότι έχουμε μια λίστα:
lst = [1, 2, 3]
Στην κατασκευή try-except θα γράψουμε
την εξαίρεση για ένα στοιχείο της λίστας που δεν υπάρχει:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
Τώρα ας ορίσουμε στο μπλοκ else
την εκτύπωση του αθροίσματος όλων των στοιχείων της λίστας:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Εάν ο κώδικας στο μπλοκ try προσπαθήσει να προσπελάσει
ένα στοιχείο που δεν υπάρχει, τότε στην κονσόλα
θα εμφανιστεί το μήνυμα σφάλματος:
'error: elem is not exist'
Τώρα ας ορίσουμε στο μπλοκ try την εκτύπωση
ενός στοιχείου που σίγουρα βρίσκεται στη λίστα:
try:
print(lst[0])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Μετά την εκτέλεση του κώδικα στην κονσόλα θα εμφανιστούν
δύο αριθμοί: το στοιχείο που ορίστηκε στο try
και το άθροισμα όλων των στοιχείων της λίστας:
1
6
Δίνεται η λίστα:
lst = [1, 2, 3]
Γράψτε κώδικα για να πιάσετε την εξαίρεση, που σχετίζεται με διαίρεση με το μηδέν. Σε περίπτωση που αυτή η εξαίρεση δεν εμφανιστεί, ας εκτυπωθεί το μήκος της λίστας.