Curso de Python – 7. Excepciones
Aprende a capturar y lanzar excepciones en Python con try/except y BufferError, y decide cuáles controlar, con ejercicios de frutas y un contador.
Serie: Curso de Python parte 8 de 9
- Presentación
- 1Curso de Python – 0. Entorno de desarrollo para Python
- 2Curso de Python – 1. Introducción
- 3Curso de Python – 2. Tipos básicos de datos
- 4Curso de Python – 3. Colecciones
- 5Curso de Python – 4. Estructuras de control de flujo
- 6Curso de Python – 5. Funciones
- 7Curso de Python – 6. Bibliotecas/Paquetes
- 8Curso de Python – 7. Excepciones
- 9Curso de Python – 8. Ficheros
En programación no existen errores como tal, sino que son excepciones. La típica ventana de error simplemente es una excepción que es recogida en esa ventana y se le muestra al usuario, el programa habrá fallado porque habrá una excepción que no se ha controlado y la ha tenido que controlar el sistema operativo.
Teoría
Saltar al contenido del PDF7.1- Excepciones
Un programa puede generar muchas excepciones, la clave es saber controlarlas, tener medios para localizarlas, cuáles tenemos que controlar y cuáles tenemos que dejar pasar.
Ejercicios
Ejercicio 7.1-frutas.py
Crea un listado con cinco frutas.
Pregunta al usuario por pantalla el índice del listado para devolvérselo. En caso de que devuelva una excepción tendrá que ser capturada y avisar al usuario del error.

Ejercicio 7.2-contador_limitado.py
Crea un while True que esté siempre iterando y sumando a un contador +1 (e imprímelo).
El ordenador donde lo ejecutamos está un poco limitado y no puede darse que el contador sea mayor que 9999. En ese momento se lanzará una excepción BufferError con un mensaje «Se ha superado los 9999 registros», ya que no se podrá sumar más. Si ejecutas con este código (ahora, sin avanzar más en el ejercicio) el programa terminará con un error en tiempo de ejecución.

Pero no queremos terminar el programa, queremos después del bucle que continúe el programa. Para ello capturaremos la excepción fuera del bucle, será donde mostremos el mensaje de error con el siguiente formato: «Se ha detectado el error ‘{mensaje_del_buffererror}'»
Y para terminar fuera del bucle imprimiremos el texto: «el código continúa»

«Curso de Python – 7. Excepciones», de Ramón Invarato en jarroba.com, con licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 3.0. Obra registrada en Safe Creative.

Te puede interesar
Excepciones (Exception) en Java, con ejemplos
Qué son las excepciones en Java, cómo se organizan a partir de Throwable y cómo controlarlas con try-catch-finally, con ejemplos de ArithmeticException.
Dockerfile avanzado: multietapa, repositorio y trucos
Curso gratis Docker. Trucos expertos de Docker, multilayer, optimizar, mejorar tiempos. Distribución de imágenes en repositorios Docker.


Deja un comentario