De um modo geral excepções e asserções são formas de controlar possíveis erros ou verificar condições num programa.
As excepções são instruções de controlo, enquanto as asserções são instruções simples. As excepções permitem que o programa continue a ser executado, mesmo na presença de um erro, pois prevê acções de remediarão. No caso das asserções isso não acontece, pois o programa termina no caso da asserção não se verificar. Assim estas últimas são sobretudo usadas para depurar os programas.
As excepções são activadas (raise) quando durante a execução se verifica um erro. Os erros podem ser de diversos tipos, podendo as excepções ser genéricas ou dirigidas a um ou mais tipos de erro. Um exemplo simples e clássico é prevenir erros nas operações:
1.
def
divisao_protegida(x,y):
2.
try
:
3.
res
=
x
/
y
4.
return
res
5.
except
ZeroDivisionError:
6.
print
(‘ERRO: divisão por zero’)
1.
def
factorial(x):
2.
assert
(x >
=
0
), ‘ERRO: número negativo’
3.
res
=
1
4.
while
x:
5.
res
*
=
x
6.
x
-
=
1
7.
return
res
Sem comentários:
Enviar um comentário