Cache any python object to file using improved pickling
Project description
To cache the result of a function, use the global unlimited anycache:
>>> from anycache import anycache >>> @anycache() ... def myfunc(posarg, kwarg=3): ... print(" Calcing %r + %r = %r" % (posarg, kwarg, posarg + kwarg)) ... return posarg + kwarg >>> myfunc(8, 5) Calcing 8 + 5 = 13 13 >>> myfunc(8, 5) 13
anycache caches nearly any python object. Also lambda statements. It uses Dill as backend. An improved version of pythons build-in pickle.
To preserve the result between multiple python runs, a persistent cache directory needs to be set.
>>> from anycache import anycache >>> @anycache(cachedir='/tmp/anycache.my') ... def myfunc(posarg, kwarg=3): ... return posarg + kwarg
The AnyCache object serves additional functions for cache clearing and size handling.
Installation
To install the anycache module run:
pip install anycache
If you do not have write-permissions to the python installation, try:
pip install anycache --user
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
anycache-2.2.0.tar.gz
(10.7 kB
view hashes)
Built Distribution
anycache-2.2.0-py3-none-any.whl
(10.8 kB
view hashes)