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:

pythonlst = [1, 2, 3]

I try-except-konstruktionen skriver vi undantagshantering för ett element som inte finns i listan:

pythontry:
  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:

pythontry:
  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'error: elem is not exist'

Låt oss nu i try-blocket specificera utskrift av ett element som definitivt finns i listan:

pythontry:
  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:

python1
6
Задание 1

Given är en lista:

pythonlst = [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.