La sentencia try especifica controladores de excepciones y/o código de limpieza para un grupo de sentencias. Cuando se produce un error o excepción cuando las llemamos, Python normalmente se detiene y genera un mensaje de error. Estas excepciones se pueden manejar usando los bloqye de try.
try: ... except: ... else: ... finally: ...
| Bloque | Descripcion |
|---|---|
| try | bloque te permite comprobar si hay errores en un bloque de código. |
| except | bloque te permite gestionar el error. |
| else | bloque permite ejecutar código cuando no hay ningún error. |
| dinally | bloque permite ejecutar código, independientemente del resultado de los bloques try y except. |
Las excepciones son la herramienta que implementa Python para manejar los errores potenciales de un programa. Cuando una porción de código quiere indicar que ocurrió un error, se dice que debe lanzar una excepción, mientras que, cuando otra quiere saber si surgió un error y actuar en consecuencia, se dice que debe capturarla o manejarla. Si una excepción es lanzada y ningún código la captura, el programa finaliza.
while True:
try:
edad = int(input('Escribe tu edad: '))
break
except ValueError:
print('Debes ingresar un número !')
if edad >= 18:
print('Eres un adulto.')
else:
print('Aún no eres un adulto.')
def solicitar_edad():
try:
return int(input('Escribe tu edad: '))
except ValueError:
return solicitar_edad()
edad = solicitar_edad()
Eventualmente necesitaremos definir nuevas excepciones si ninguna de las incorporadas se adecúa a nuestros intereses. Simplemente debemos crear una clase que herede de Exception
class NuevaExcepcion(Exception): pass