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