Check
Как работает `functools.lru_cache`? Какие ограничения есть у функций, к которым его можно применять, и что происходит при `maxsize=None`?

LRU cache

Ответ 1 / 1

`lru_cache` кеширует результаты функции по её позиционным и именованным аргументам, используя словарь + двусвязный список (LRU). Ограничения: - аргументы должны быть хешируемыми (используются как ключи словаря); - не стоит использовать для функций с побочными эффектами (кеш сломает семантику). `maxsize=None` превращает кеш в неограниченный (по сути обычный memoization без вытеснения). Это может привести к утечке памяти при большом разнообразии аргументов.