Else blokas išimčių gaudymo konstrukcijoje Python

Į try-except konstrukciją taip pat galima pridėti else bloką. Svarbus niuansas yra tas, kad kodas, esantis else bloke, veiks, jei iki tol try-except konstrukcijoje nebuvo pagauta jokių išimčių.

Tarkime, kad turime sąrašą:

pythonlst = [1, 2, 3]

try-except konstrukcijoje aprašykime neegzistuojančio sąrašo elemento išimties gaudymą:

pythontry:
  print(lst[4])
except IndexError:
  print('klaida: elementas neegzistuoja')

Dabar else bloke nurodykime visų sąrašo elementų sumos išvedimą:

pythontry:
  print(lst[4])
except IndexError:
  print('klaida: elementas neegzistuoja')
else:
  print(sum(lst))

Jei try bloke esantis kodas kreipiasi į neegzistuojantį elementą, konsolėje pasirodys klaidos pranešimas:

error'klaida: elementas neegzistuoja'

Dabar try bloke nustatykime elemento, kuris tikrai yra sąraše, išvedimą:

pythontry:
  print(lst[0])
except IndexError:
  print('klaida: elementas neegzistuoja')
else:
  print(sum(lst))

Vykdant kodą, konsolėje pasirodys du skaičiai: try bloke nurodytas elementas ir visų sąrašo elementų suma:

python1
6
Задание 1

Duotas sąrašas:

pythonlst = [1, 2, 3]

Parašykite kodą, skirtą pagauti išimtį, susijusią su dalyba iš nulio. Jei ši išimtis nepasirodys, turi būti atspausdintas sąrašo ilgis.