Artículos

  • Python 0

    match en Python 3.10: pattern matching estructural con case, guards y clases

    Aprende a usar el match statement de Python 3.10 para pattern matching estructural: literales, secuencias, mappings, clases, guards con if y OR con |. Con cuatro ejemplos reales que cubren parseo de CLI, respuestas JSON y manejo de eventos.

  • Python 0

    Decoradores avanzados en Python: paramétricos, decoradores de clase y stacking

    Aprende a crear decoradores con parámetros en Python usando tres niveles de anidamiento, apila varios con stacking, implementa clases como decoradores con __call__ y domina patrones reales de timing, retry y logging con @wraps incluido.

  • Python 0

    pytest en Python: fixtures, parametrize, marks, monkeypatch y conftest

    pytest es el framework de testing más usado en Python: tests sin clases, fixtures con inyección automática, parametrize para múltiples casos, monkeypatch para parchear dependencias externas y conftest.py para compartir configuración entre archivos de test.

  • Python 0

    collections en Python: Counter, defaultdict, deque, ChainMap y OrderedDict

    El módulo collections de Python incluye estructuras especializadas: Counter para frecuencias, defaultdict para evitar KeyError, deque para colas O(1) con ventana deslizante, ChainMap para buscar en varios dicts sin copiarlos y OrderedDict con move_to_end para cachés LRU.

  • Python 0

    itertools en Python: chain, product, combinations, groupby e islice para iteraciones eficientes

    El módulo itertools de Python permite procesar secuencias de forma lazy, sin copiar datos en memoria. Aprende a combinar listas con chain, paginar con islice, generar combinaciones con product y permutations, y agrupar registros con groupby. Ejemplos reales con logs, catálogos y datos de ventas.

  • Python 0

    functools en Python: lru_cache, cache, partial, reduce, wraps y cached_property

    Guía práctica del módulo functools de Python: cómo usar @lru_cache y @cache para memoización, partial() para fijar argumentos, @wraps en decoradores, reduce() para acumulaciones, cached_property para propiedades calculadas una sola vez y total_ordering para comparaciones.

  • Python 0

    contextlib en Python: @contextmanager, suppress, nullcontext y gestores propios

    El módulo contextlib de Python te da herramientas para crear gestores de contexto sin escribir clases. Aprende a usar @contextmanager, suppress, nullcontext y ExitStack con ejemplos de timers, transacciones de base de datos y más.

  • Python 0

    dataclasses en Python: @dataclass, field(), frozen, slots y __post_init__

    El módulo dataclasses de Python 3.7+ genera __init__, __repr__ y __eq__ automáticamente. Aprende a usar field() para defaults avanzados, __post_init__ para validar datos, frozen=True para inmutabilidad, slots=True para eficiencia en memoria y order=True para comparaciones.

  • Python 0

    typing en Python: type hints, generics con TypeVar, Protocol y tipos avanzados

    Guía práctica del módulo typing de Python: type hints con list[int] y dict[str, Any], Optional y Union con la sintaxis moderna (|), TypeVar para funciones genéricas, Generic[T] para clases, Protocol para duck typing estructural sin herencia, Callable, Literal, Final y TYPE_CHECKING.

  • Python 0

    asyncio avanzado: gather, TaskGroup, Queue y sincronización en Python async

    Aprende a usar asyncio.gather(), TaskGroup, asyncio.Queue y Semaphore en Python para lanzar múltiples coroutines en paralelo, limitar la concurrencia y comunicar tareas entre sí sin bloquear el loop de eventos. Con ejemplos reales y el antipatrón más común.