Le bloc else dans la capture d'exceptions en Python
Il est également possible d'ajouter un bloc
else à la construction
try-except. Un détail important
est que le code placé dans le bloc
else s'exécutera si aucune exception
n'a été capturée auparavant dans le
try-except.
Supposons que nous ayons une liste :
lst = [1, 2, 3]
Dans la construction try-except, écrivons
la capture d'une exception pour un élément
inexistant de la liste :
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
Maintenant, spécifions dans le bloc else
l'affichage de la somme de tous les éléments de la liste :
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Si le code dans le bloc try accède à un
élément absent, le message d'erreur
apparaîtra dans la console :
'error: elem is not exist'
Maintenant, définissons dans le bloc try l'affichage
d'un élément qui se trouve certainement dans la liste :
try:
print(lst[0])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Après l'exécution du code, deux nombres
apparaîtront dans la console : l'élément
spécifié dans try et la somme de tous
les éléments de la liste :
1
6
Soit la liste :
lst = [1, 2, 3]
Écrivez un code pour capturer l'exception liée à une division par zéro. Dans le cas où cette exception n'apparaît pas, que la longueur de la liste soit affichée.