Blok else při zachycování výjimek v Pythonu

Do konstrukce try-except lze také přidat blok else. Důležitý nuance spočívá v tom, že kód umístěný v bloku else se spustí, pokud před ním v try-except nebyla zachycena žádná výjimka.

Mějme seznam:

pythonlst = [1, 2, 3]

V konstrukci try-except napíšeme zachycení výjimky pro neexistující prvek seznamu:

pythontry:
  print(lst[4])
except IndexError:
  print('error: elem is not exist')

Nyní v bloku else specifikujme výpis součtu všech prvků seznamu:

pythontry:
  print(lst[4])
except IndexError:
  print('error: elem is not exist')
else:
  print(sum(lst))

Pokud kód v bloku try přistupuje k neexistujícímu prvku, objeví se v konzoli zpráva o chybě:

error'error: elem is not exist'

Nyní v bloku try nastavme výpis prvku, který se v seznamu určitě nachází:

pythontry:
  print(lst[0])
except IndexError:
  print('error: elem is not exist')
else:
  print(sum(lst))

Po provedení kódu se v konzoli objeví dvě čísla: prvek zadaný v try a součet všech prvků seznamu:

python1
6
Задание 1

Dán seznam:

pythonlst = [1, 2, 3]

Napište kód pro zachycení výjimky související s dělením nulou. V případě, že se tato výjimka neobjeví, ať se vypíše délka seznamu.