difflib compara secuencias y produce formatos reconocidos por herramientas de revisión. unified_diff recibe líneas con sus saltos conservados y crea un parche textual útil en logs, pruebas e informes.
from difflib import unified_diff
before = "name=Ana\nstatus=pending\n".splitlines(keepends=True)
after = "name=Ana\nstatus=active\n".splitlines(keepends=True)
diff = unified_diff(before, after, fromfile="before", tofile="after")
print("".join(diff))
Cómo usarlo con seguridad
Normaliza solo aquello que la regla de negocio considera irrelevante; eliminar espacios o mayúsculas puede ocultar cambios reales. SequenceMatcher no es un algoritmo de distancia lingüística y puede ser costoso con entradas grandes. Limita los datos externos.
Para reforzar la base, consulta guía de collections en Python y guía de type hints.
La documentación oficial de Python, consultada el 22 de julio de 2026, describe la API, los casos límite y la compatibilidad entre versiones.