Кэширование результатов функции Python с использованием только подмножества аргументов в качестве идентификатораPython

Программы на Python
Ответить
Anonymous
 Кэширование результатов функции Python с использованием только подмножества аргументов в качестве идентификатора

Сообщение Anonymous »

Есть ли простой способ кэширования результатов функции в Python на основе одного аргумента-идентификатора? Например, предположим, что моя функция имеет три аргумента arg1, arg2 и id. Есть ли простой способ кэшировать результат функции только на основе значения id? То есть всякий раз, когда id принимает одно и то же значение, кэшированная функция будет возвращать один и тот же результат независимо от arg1 и arg2.
Справочная информация:
У меня есть трудоемкая и неоднократно вызываемая функция, в которой arg1 и arg2 представляют собой списки и словари, состоящие из больших массивов чисел. Следовательно, functools.lru_cache не работает как есть. Тем не менее, существует лишь несколько конкретных комбинаций arg1 и arg2. Отсюда моя идея вручную указать некоторый идентификатор, который принимает уникальное значение для каждой возможной комбинации arg1 и arg2.

Подробнее здесь: https://stackoverflow.com/questions/660 ... identifier
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»