Saltar al contenido

# conceptos-avanzados-en-python

Conceptos Avanzados en Python

Volver a la portada del curso
Quiz

Quiz sobre Manejo de Errores

Sección 3 · Manejo de Errores y Excepciones

5 preguntas de opción múltiple. Aprobar con 80%. Intentos ilimitados.

  1. 1. La versión LBYL lee la cantidad con if texto.isdigit(): return int(texto) y devuelve None en otro caso. La versión EAFP hace try: return int(texto) except ValueError: return None. ¿Con qué entrada dan resultados distintos?

  2. 2. FilaInvalidaError hereda de ValueError y guarda num_linea y motivo. Pedido.desde_fila la lanza con raise FilaInvalidaError(...) from None cuando int("dos") falla. ¿Qué afirmación es correcta?

  3. 3. Se configura logging.basicConfig(level=logging.INFO) y luego log.debug("a"), log.info("b") y log.warning("c"). ¿Qué mensajes se emiten?

  4. 4. Se lanza ExceptionGroup("lote con errores", [tres FilaInvalidaError, KeyError("ciudad")]) y el try tiene dos cláusulas: except* FilaInvalidaError y except* KeyError. ¿Qué ocurre?

  5. 5. Alguien reescribe cronometro con @contextmanager sin try/finally: t0 = time.perf_counter(); yield; registro[etiqueta] = time.perf_counter() - t0. ¿Qué pasa si el bloque with lanza FilaInvalidaError?