typestar

else y finally en Python

Cuatro bloques, cuatro trabajos: try, except, else para el éxito, finally para limpiar.

def leer_numero(texto):
    try:
        valor = int(texto)
    except ValueError:
        print("no se pudo convertir")
        return None
    else:
        print("convertido sin problema")
        return valor
    finally:
        print(f"listo con {texto!r}")


print(leer_numero("42"))
print(leer_numero("no"))

Cómo funciona

  1. else corre solo cuando no se lanzó ninguna excepción.
  2. finally corre en todos los caminos, incluido un return.
  3. Dejar sola la línea riesgosa en try es el punto de else.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
251
Tokens
65
Ritmo de tres estrellas
100 tpm

Al ritmo de tres estrellas de 100 tokens por minuto, este intento toma unos 39 segundos.

Escribe este fragmento

Paso 2 de 3 en Errores a fondo; paso 63 de 72 en Fundamentos del lenguaje.

← Anterior Siguiente →