mmap expone el contenido de un archivo como una secuencia de bytes mutable o de solo lectura. El sistema operativo carga páginas bajo demanda, algo útil para búsquedas y acceso aleatorio en archivos grandes.
from mmap import ACCESS_READ, mmap
with open("events.log", "rb") as file:
with mmap(file.fileno(), length=0, access=ACCESS_READ) as data:
position = data.find(b"ERROR")
if position != -1:
print(data[position:position + 80])
Cómo usarlo con seguridad
Abre el archivo en un modo compatible y cierra el mapping antes del descriptor. No supongas que siempre será más rápido: una lectura secuencial con buffer puede ser más simple. Prueba archivos vacíos, truncado concurrente y diferencias entre Windows y Unix.
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.