typestar

Gestor de contexto para cronometrar en Python

Los gestores de contexto garantizan la limpieza; este mide el tiempo transcurrido.

import time
from contextlib import contextmanager

@contextmanager
def cronometrar(rotulo):
    inicio = time.perf_counter()
    try:
        yield
    finally:
        transcurrido = time.perf_counter() - inicio
        print(f"{rotulo}: {transcurrido:.3f}s")

Cómo funciona

  1. @contextmanager convierte el generador en un ayudante de bloques with.
  2. El código antes del yield corre al entrar y registra la hora de inicio.
  3. El bloque finally siempre imprime el tiempo transcurrido al salir.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
11
Caracteres a escribir
224
Tokens
50
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 29 segundos.

Escribe este fragmento

Paso 2 de 5 en Protocolos y gestores de contexto; paso 16 de 53 en Python pythónico.

← Anterior Siguiente →