PYTHON TRY EXCEPT

  • El bloque try le permite probar un bloque de código para detectar errores.
  • El bloque except le permite manejar el error.
  • El bloque finally le permite ejecutar código, independientemente del resultado de los bloques try y except.

Crear y gestionar las excepciones

Cuando ocurre un error, o una excepción, como lo llamamos, Python normalmente se detendrá y generará un mensaje de error.

Estas excepciones se pueden manejar usando la declaración de prueba:

try:
print(x)
except:
print("Ha existido una excepción")

Dado que el bloque try genera un error, se ejecutará el bloque except. Sin el bloque try, el programa se bloqueará y generará un error:

Ejemplo

Esta declaración generará un error, porque x no está definido:

print(x)

Muchas excepciones

Puede definir tantos bloques de excepción como desee, por ejemplo, Si desea ejecutar un bloque de código especial para un tipo especial de error:

Ejemplo

Imprima un mensaje si el bloque try genera un error de nombre y otro para otros errores:

try:
  print(x)
except NameError:
  print("La variable no se ha definido")
except:
  print("Algo no ha ido bien")

ELSE

Puede usar la palabra clave else para definir un bloque de código que se ejecutará si no se generaron errores:

Ejemplo

En este ejemplo, el bloque try no genera ningún error:

try:
  print("Hola")
except:
  print("Algo no ha ido bien")
else:
  print("No han existido errores")

Finally

El bloque finally, si se especifica, se ejecutará independientemente de si el bloque try genera un error o no.

Ejemplo

try:
  print(x)
except:
  print("Algo no ha ido bien")
finally:
  print("'try except' ha terminado")

Esto puede ser útil para cerrar objetos y limpiar recursos:

Ejemplo

Intente abrir y escribir en un archivo que no se pueda escribir:

try:
f = open("archivo_ejemplo.txt")
f.write("Hola Mundo")
except:
print("Algo fué mal cuando escribía el archivo")
finally:
f.close()