Blok else pri zachytávaní výnimiek v Pythone
Do konštrukcie try-except je možné
pridať aj blok else. Dôležitý detail
spočíva v tom, že kód umiestnený v bloku
else sa spustí, ak pred ním v
try-except nebola zachytená žiadna
výnimka.
Majme zoznam:
lst = [1, 2, 3]
V konštrukcii try-except napíšme
zachytávanie výnimky pre neexistujúci
prvok zoznamu:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
Teraz zadajme v bloku else
výpis súčtu všetkých prvkov zoznamu:
try:
print(lst[4])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Ak kód v bloku try pristupuje k
neexistujúcemu prvku, v konzole
sa objaví správa o chybe:
'error: elem is not exist'
Teraz zadajme v bloku try výpis
prvku, ktorý určite je v zozname:
try:
print(lst[0])
except IndexError:
print('error: elem is not exist')
else:
print(sum(lst))
Po vykonaní kódu sa v konzole objavia
dve čísla: prvok zadaný v try
a súčet všetkých prvkov zoznamu:
1
6
Daný zoznam:
lst = [1, 2, 3]
Napíšte kód na zachytenie výnimky súvisiacej s delením nulou. V prípade, že sa táto výnimka neobjaví, nech sa vypíše dĺžka zoznamu.