/rememberer

Rememberer is a python package to help your functions remember their previous results.

Primary LanguagePythonMIT LicenseMIT

rememberer

Rememberer is a tool to help your functions remember their previous results.

The advantage of this package compared to other memoization packages is that it will remember the result of the function even if you kill the program and restart it.

It will also remember the result even if you restart the python interpreter because it uses a pickle file to store the results.

Installation

pip install rememberer

Usage

from rememberer import rem

def add(a, b):
    import time
    time.sleep(3)
    return a + b

rem(add, 1, b=2)  # this will take 3 seconds
rem(add, 1, b=2)  # this will take ~0 seconds

You can use it as a decorator as well:

from rememberer import rem_dec

@rem_dec
def add(a, b):
    import time
    time.sleep(3)
    return a + b

add(1, b=2)  # this will take 3 seconds
add(1, b=2)  # this will take ~0 seconds

If you want to clear the cache, you can use the forget method:

from rememberer import forget

forget(add, 1, b=2)