Я написал небольшой класс, чтобы постоянно запоминать некоторые дорогостоящие функции, которые выполняют различные статистические анализы случайных сетей.
Это все чистые функции; все данные неизменны. Однако некоторые функции принимают функции в качестве аргументов.
Создание ключей на основе этих аргументов - небольшая проблема, поскольку в Python равенство объектов функции эквивалентно идентичности объекта функции, которая не сохраняется между сессиями, даже если реализация функции не меняется.
Я пока хакуюсь об этом, используя имя функции в виде строки, но это порождает целый ряд проблем, когда кто-то задумывается об изменении реализации функции или анонимных функций и так далее. Но я, наверное, не первый, кто беспокоится о таких вещах.
Есть ли у кого-нибудь стратегии для постоянного запоминания функций с аргументами функций в Python?