Opskorting van verskillende tipes uitsonderings in Python
In dieselfde kode kan dit nodig wees om verskillende tipes uitsonderings op te vang.
Kom ons sê ons moet 'n uitsondering vang wanneer ons deur nul deel. In sulke foute kom die uitsondering voor:
ZeroDivisionError: division by zero
Om dit te vang, moet die uitsondering se naam
in die except-blok geskryf word:
try:
print(1 / 0)
except ZeroDivisionError:
print('error: do not divide by zero')
Veronderstel ook ons het 'n lys:
lst = [1, 2, 3]
As jy in die try-blok kode sit met 'n ander
potensiële fout, byvoorbeeld om 'n nie-bestaande
element te druk, sal die uitsondering wat nie
in die except-blok gevang word nie, deurbreek
en in die konsole vertoon word. Dit sal die
kode se uitvoering stop:
lst = [1, 2, 3]
try:
print(lst[4]) # sal IndexError: list index out of range uitstuur
except ZeroDivisionError:
print('error: do not divide by zero')
Om hierdie situasie op te los, moet jy in elke blok die naam van die ooreenstemmende tipe uitsondering spesifiseer. Kom ons voeg by ons kode 'n uitsondering vir die ontbrekende element:
try:
print(lst[4])
except ZeroDivisionError:
print('error: do not divide by zero')
except IndexError:
print('error: elem is not exist')
Die volgende kode word gegee:
txt = '2'
res1 = txt + 3
res2 = txt1
Skryf kode om die uitsonderings wat voorgestel word
in die veranderlikes res1 en res2
op te vang.