🐍 Функциональный Python: как перестать считать одно и то же по несколько раз
Частый кейс в аналитике: внутри цикла или пайплайна ты раз за разом вызываешь одну и ту же функцию с одинаковыми аргументами. Например, считаешь метрику по сегменту или достаёшь данные из справочника. Каждый вызов — это заново отработавший расчёт функции. Но в Python есть декоратор @lru_cache, который кеширует результаты вызовов. Функция считается первый раз, дальше результат берётся из кеша за миллисекунды если аргументы одинаковые. Пример и документация здесь Нюансы использования: 🔹 Кешируй только чистые функции. Если внутри функции зависит от меняющихся данных, например текущая дата, курс валют в реальном времени, состояние БД — кеш отдаст устаревший результат...