Manejo de Errores en Python: Uso de Try y Except
Curso de Python: Comprehensions, Funciones y Manejo de Errores
Contenido del curso
Conjuntos
Comprehensions
- 6

List Comprehension en Python: Sintaxis y Ejemplos Prácticos
08:44 min - 7

Comprensión de Diccionarios en Python: Ejemplos y Aplicaciones
11:57 min - 8

Dictionary Comprehension con Condicionales en Python
07:33 min - 9

Playgrounds: Crea una lista usando List Comprehension
- 10

Comparación de Listas, Tuplas y Conjuntos en Python
02:44 min
Funciones
- 11

Funciones en Programación: Creación y Uso en Python
09:47 min - 12

Funciones en Python: Retorno de Valores y Reutilización de Código
10:03 min - 13

Funciones en Python: Retorno múltiple y valores por defecto
06:30 min - 14

Entendiendo el Scope en Python: Variables y Funciones
07:54 min - 15

Refactorización de Juegos en Python: Uso de Funciones
15:10 min - 16

Playgrounds: Tienda de Tecnología
- 17

Funciones Lambda en Python: Sintaxis y Aplicaciones Prácticas
06:39 min - 18

Funciones de Orden Superior en Python: Concepto y Ejemplos Prácticos
08:48 min - 19

Uso de la función map en Python para transformar listas
08:43 min - 20

Transformaciones con Map en Diccionarios Complexos
09:56 min - 21

Manejo de referencias en memoria con diccionarios y map en Python
04:12 min - 22

Playgrounds: Multiplica todos los elementos por dos
- 23

Filtrado de listas con Filter en Python
09:19 min - 24

Playgrounds: Retorna solo palabras de 4 letras y más
- 25

Uso de Reduce en Python para Manipular Listas
07:45 min
Módulos
Manipulación de archivos y errores
- 31

Control manual de iteradores en Python con next
06:33 min - 32

Errores y Excepciones en Python: Identificación y Manejo Básico
08:28 min - 33

Manejo de Errores en Python: Uso de Try y Except
Viendo ahora - 34

Playgrounds: Captura la excepción: ZeroDivisionError
- 35

Lectura y manejo de archivos de texto en Python
06:52 min - 36

Lectura y escritura de archivos de texto en Python
06:11 min - 37

Procesamiento de Archivos CSV en Python para Análisis de Datos
15:49 min - 38

Playgrounds: Lee un CSV para calcular el total de gastos
Gráficas en Python
Próximos pasos
Manejo de Errores en Python: Uso de Try y Except
Resumen
Cuando un programa de Python encuentra un error, por defecto detiene toda su ejecución. Esto significa que las líneas posteriores al fallo nunca se procesan, dejando al usuario sin respuesta y al sistema fuera de servicio. Aprender a controlar y manejar esos errores es una habilidad fundamental para escribir código robusto y profesional.
¿Qué sucede cuando Python encuentra un error sin control?
Imagina una operación tan simple como dividir un número entre cero [0:44]. Python lanza una excepción llamada ZeroDivisionError y detiene el programa de inmediato. Cualquier instrucción que venga después, como un print("hola"), jamás se ejecuta.
python print(10 / 0) print("hola") # Esta línea nunca se ejecuta
Este comportamiento es problemático en aplicaciones reales, donde una sola falla no debería tumbar todo el sistema. Para evitarlo, Python ofrece la estructura try except, que permite atrapar el error, procesarlo y continuar con la ejecución normal del programa.
¿Cómo funciona la estructura try except?
La palabra clave try define un bloque donde colocas el código que podría fallar. Inmediatamente después, la palabra clave except captura el tipo específico de error que se produzca [1:12]. El programa no se detiene: salta al bloque except, ejecuta lo que indiques allí y luego continúa con las líneas posteriores.
python try: print(10 / 0) except ZeroDivisionError as error: print("Error:", error)
print("hola") # Esta línea sí se ejecuta
Al ejecutar este código, Python imprime el mensaje de error y luego ejecuta el print("hola") sin problemas [1:50]. Una buena práctica en ingeniería es registrar estos errores en un sistema de tracking o reporte de fallos, en lugar de simplemente imprimirlos. Así puedes identificar en qué líneas y puntos falla tu sistema sin dejar de dar servicio.
¿Cómo atrapar errores de tipo assertion?
El assert es una instrucción que valida condiciones. Si la condición es falsa, lanza un AssertionError y puede incluir un mensaje personalizado [2:30].
python assert 1 != 1, "uno no es igual que uno"
Este error también se captura con try except:
python try: assert 1 != 1, "uno no es igual que uno" except AssertionError as error: print(error)
El resultado muestra el mensaje "uno no es igual que uno", pero la ejecución del programa continúa normalmente [3:18].
¿Se pueden capturar excepciones propias o personalizadas?
Cuando creas validaciones con lógica de negocio, puedes lanzar excepciones genéricas de tipo Exception [3:38]. Para capturarlas, usas el mismo patrón:
python try: # lógica de validación que lanza Exception raise Exception("No se presenta en menores de edad") except Exception as error: print(error)
Una forma sencilla de identificar el tipo de error es ejecutar primero el código sin try except, observar el nombre de la excepción que Python imprime y luego copiarlo en tu bloque except [3:50].
¿Cómo unificar múltiples errores en un solo bloque try?
No es necesario crear un try except para cada línea de código. Puedes agrupar toda la lógica en un solo bloque try y capturar cada tipo de error de forma independiente [4:28].
python try: print(10 / 0) assert 1 != 1, "uno no es igual que uno" # validación personalizada except ZeroDivisionError as error: print(error) except AssertionError as error: print(error) except Exception as error: print(error)
print("El programa continúa")
- Python detecta el primer error dentro del bloque y salta al
exceptcorrespondiente. - Las líneas restantes dentro del
tryno se ejecutan, porque no tendría sentido continuar si ya hubo un fallo [5:10]. - Todo lo que esté fuera del bloque try sigue ejecutándose con normalidad.
Esto te da flexibilidad para agregar lógica después de capturar la excepción: mostrar un mensaje al usuario, solicitar nuevamente la información o reintentar la operación. La decisión depende de lo que tu aplicación necesite en cada caso.
Ahora que dominas el manejo de errores, el siguiente paso lógico es trabajar con archivos. ¿Has intentado leer un archivo TXT desde Python? Comparte tu experiencia con el manejo de excepciones en los comentarios.