Capturar excepción en argumentos de función
Publicado por Yidu (19 intervenciones) el 03/04/2015 14:41:47
Hola!
Aunque pensaba que lo tenia claro, veo que no. Se trata de capturar un argumento mal pasado a una función.
Si hago:
Y luego:
Me captura bien la excepción.
¿Porqué no courre lo mismo si ponemos una variable no definida?
¿No dabería lanzar la excepción NameError definida por nosotros? Osea:
Gracias por adelantado!
Aunque pensaba que lo tenia claro, veo que no. Se trata de capturar un argumento mal pasado a una función.
Si hago:
1
2
3
4
5
6
7
8
def numeros(a, b):
try:
resultado = a + b
return resultado
except TypeError:
print('Es un tipo de dato equivodo')
except NameError:
print('Variable no definida')
Y luego:
1
2
>>> a = numeros(4,'t')
Es un tipo de dato equivocado
Me captura bien la excepción.
¿Porqué no courre lo mismo si ponemos una variable no definida?
1
2
3
4
>>> numeros(4,z)
Traceback (most recent call last):
File "<string>", line 1, in <fragment>
builtins.NameError: name 'z' is not defined
¿No dabería lanzar la excepción NameError definida por nosotros? Osea:
1
Variable no definida
Gracias por adelantado!
Valora esta pregunta


0