Na czym to polega w sklepie
Metoda setdefault() zwraca wartość klucza, a jeśli go nie ma - ustawia domyślną i ją zwraca. Przy budowie map produktowych i agregacji eventów upraszcza kod bez defaultdict.
Przykład ze sklepu internetowego
Budujesz mapę SKU → kategoria, uzupełniając brakujące wpisy wartością unknown:
sku_to_category = {"SKU-100": "obuwie", "SKU-204": "odziez"}
def classify(sku):
return sku_to_category.setdefault(sku, "unknown")
classify("SKU-999") # 'unknown'
sku_to_category["SKU-999"] # 'unknown'
Co zrobić po stronie biznesu
- Inicjalizacja pustych list przy grupowaniu eventów GA4.
- Uzupełnianie domyślnego źródła dla sesji bez UTM.
- Cache mapowania kampanii przy wielokrotnym lookup.
W skrócie
setdefault łączy odczyt i zapis w jednej operacji - przydatne w lekkich agregacjach bez importu defaultdict.