Przejdź do treści

Python. Klasa collections.deque(). Bufor ostatnich eventów sesji.

Na czym to polega w sklepie

Klasa deque (double-ended queue) z modułu collections to kolejka z szybkim dodawaniem i usuwaniem z obu końców. Z parametrem maxlen trzyma ostatnie N elementów - idealna do sliding window w analityce.

Przykład ze sklepu internetowego

Śledzisz ostatnie 5 eventów w sesji użytkownika przed wykryciem porzucenia koszyka:

from collections import deque

session_events = deque(maxlen=5)
for event in ["page_view", "view_item", "add_to_cart", "page_view", "view_item", "remove_from_cart"]:
    session_events.append(event)

list(session_events)
# ostatnie 5 eventów, bez 'page_view' z początku

Co zrobić po stronie biznesu

  • Rolling window średniego CPA z ostatnich 7 dni.
  • Bufor ostatnich alertów spadku konwersji w monitorze.
  • Śledzenie ostatnich N transakcji w realtime dashboardzie.

W skrócie

deque(maxlen=N) automatycznie usuwa najstarsze elementy - prostsze niż ręczne obcinanie listy w analizie strumieniowej.