EAFP — Easier to Ask Forgiveness than Permission: try/except, сначала делай, потом обрабатывай ошибку. LBYL — Look Before You Leap: if проверка перед действием. Python предпочитает EAFP: try: value = d[key] except KeyError: ... — вместо if key in d: value = d[key]. EAFP быстрее в happy path (нет лишних проверок), атомарнее (нет race condition между проверкой и действием). LBYL уместен когда исключение дорогое или проверка очевиднее. hasattr() — LBYL, getattr(obj, "method", default) — EAFP-подход.
Что такое EAFP и LBYL?
Middle
290 просмотровAFK Offer AI
Как правильно использовать raise?