Skip to main content

timed-cache

Pure Python timed-cache that behaves like a regular dict. Can also be used as a decorator to cache function calls (works for async functions as well).

Installation

pip install py-timed-cache

Example

from timedcache import TimedCache

my_cache = TimedCache(1) # 1 second cache
my_cache["foo"] = "bar" # all dict methods works as if it was a normal dict
for k, v in my_cache.items():
    print(k, v) # will print foo bar

# Also works for functions

@TimedCache(5)
def foo(number):
    # some expensive compute...
    print("begin computation...")
    result = number * 10**30
    print("end computation")
    return res

big_number = foo(42) # cache MISS ==> this will print both statements above

big_number_again = foo(42) # Called with same argument(s) ==> cache HIT, returns immediately

Python versions

Python >= 3.6 are supported

Tests

This project uses unittest.

Run python tests/test_timedcache.py

Metadata

Release files for py-timed-cache 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for py-timed-cache 1.0.2
File Size Uploaded
py-timed-cache-1.0.2.tar.gz 3.7 kB Details

Release files / py-timed-cache-1.0.2.tar.gz

Download URL py-timed-cache-1.0.2.tar.gz
Size 3.7 kB
Tags Source
SHA-256 checksum
How to use checksums
c30445220261a2fa2c049f51648b22af94b1273bde1e3f2f189c3e4012f2b89e
BLAKE2b-256 checksum
How to use checksums
8f87e717964fe732bf0bc83396458d01d99654772b5ed722b6574486a3134efc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.0

Release history Release notifications | RSS feed

This release

1.0.2 This release

1 release file

1.0.1

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page