Przejdź do treści

Python. Funkcja bisect.bisect_left(). Przypisanie zamówienia do progu cenowego.

Na czym to polega w sklepie

Funkcja bisect_left() z modułu bisect zwraca indeks w posortowanej liście progów, gdzie wartość koszyka powinna zostać wstawiona. Przy wielu progach cenowych (tier 1–5) jest szybsza niż pętla if/elif po każdym zamówieniu.

Przykład ze sklepu internetowego

Masz progi AOV: do 100, do 250, do 500, powyżej - przypisujesz tier do wartości koszyka:

import bisect

thresholds = [100, 250, 500]  # posortowane rosnąco
tier_labels = ["low", "mid", "high", "vip"]

def price_tier(order_value: float) -> str:
    idx = bisect.bisect_left(thresholds, order_value)
    return tier_labels[idx]

price_tier(349.90)  # 'high'

Co zrobić po stronie biznesu

  • Segmentacja ROAS per tier AOV w raporcie kampanii Performance Max.
  • Progi darmowej dostawy - który próg brakuje do kolejnego benefitu.
  • Klasyfikacja transakcji B2B po wartości zamówienia w uploadzie offline.

W skrócie

bisect_left wymaga posortowanych progów. Dla kilku stałych widełek AOV to czytelny i wydajny wzorzec w skryptach raportowych.