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.