Это модуль для высокоуровневых операций над функциями. С его помощью вы можете кэшировать значения, разделять функции и создавать декораторы. @cache — замена @lru_cache(None), добавленная в Python 3.9. Декоратор, позволяющий кэшировать результат работы функции. partial() — возвращает функцию, при вызове которой передаются заранее переданные параметры. @wraps — определяет функцию как декоратор, за счёт реализации важных атрибутов: __name__, __module__, __doc__. Найдем факториал; LRU (least recently used) кеш — кеш с ограниченным размером.
При помощи этого декоратора можно запоминать в кэшее результат функции .
Такое кеширование позволяет экономить ресурсы и ускоряет работу программы, рекомендуем использовать декторактор если тяжёлая функция вызывается периодически с более или менее одинаковым набором аргументов. #lesson #python