Я пишу memoizing decorator для Python 3. План состоит в том, чтобы рассортить кеш во временном файле, чтобы сэкономить время на нескольких исполнениях.Должен ли я хранить временные файлы в папке __pycache__?
Кэш будет удален, если файл, содержащий украшенную функцию, был изменен, как и файл .pyc в __pycache__. Итак, я начал думать о том, чтобы разжечь каталог проекта пользователя, поставив маринованный кэш в __pycache__. Есть ли побочные эффекты хранения файлов в этом каталоге? Это вводит в заблуждение или запутывает?
Я не понимаю, что на самом деле делает ваш мемориальный декоратор. Не могли бы вы объяснить это? – 3442
Конечно! Декоратор изменяет поведение функции, чтобы параметры и их результаты сохранялись в словаре (кеше). Когда функция вызывается, она проверяет, была ли функция уже оценена для этих параметров. Если это так, функция смотрит вверх и возвращает результат в словаре, а не повторяет вычисления. –
О, отличная идея! Это потребует, чтобы функция была чистой. Однако что с этим связано '__pycache__'? ** Изменить **: Теперь я понимаю; написав ответ. – 3442