Skip to content
7 / 15

Что делают `functools.lru_cache`, `cache` и `partial` и когда они уместны?

lru_cache(maxsize) запоминает результат функции по её аргументам, вытесняя самые старые при переполнении; cache (3.9+) — то же без лимита. Подходят только для чистых функций с хэшируемыми аргументами. partial(func, *args, **kwargs) создаёт новую callable с зафиксированными первыми аргументами — удобно для колбэков и преднастройки клиентов.

Что делают `functools.lru_cache`, `cache` и `partial` и когда они уместны? | JScriptiser