Else-block vid undantagshantering i Python
I konstruktionen try-except kan man också
lägga till ett else-block. En viktig nyans
är att koden som placeras i else-blocket
kommer att köras om inget undantag fångades
i try-except före det.
Låt oss säga att vi har en lista:
lst = [1, 2, 3]
I try-except-konstruktionen skriver vi
undantagshantering för ett element som inte
finns i listan:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
Låt oss nu i else-blocket specificera
utskriften av summan av alla element i listan:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Om koden i try-blocket försöker komma åt
ett element som inte finns, kommer ett felmeddelande
att visas i konsolen:
'error: elem is not exist'
Låt oss nu i try-blocket specificera utskrift
av ett element som definitivt finns i listan:
try:
print(lst[0])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Efter att koden har körts kommer två nummer
att visas i konsolen: elementet som angavs i
try och summan av alla element i listan:
1
6
Given är en lista:
lst = [1, 2, 3]
Skriv kod för att fånga undantaget relaterat till division med noll. Om detta undantag inte uppstår, ska listans längd skrivas ut.