return K
def lfu_cache(maxsize=100):
- '''Least-frequently-used cache decorator.
+ """Least-frequently-used cache decorator.
Arguments to the cached function must be hashable.
Cache performance statistics stored in f.hits and f.misses.
Clear the cache using f.clear().
http://en.wikipedia.org/wiki/Cache_algorithms#Least-Frequently_Used
- '''
+ """
def decorating_function(user_function):
cache = {} # mapping of args to results
use_count = Counter() # times each key has been accessed
return result
def clear():
- 'Clear the cache and cache statistics'
+ """Clear the cache and cache statistics"""
cache.clear()
use_count.clear()
wrapper.hits = wrapper.misses = 0
return decorating_function
def lru_cache(maxsize=100):
- '''Least-recently-used cache decorator.
+ """Least-recently-used cache decorator.
Arguments to the cached function must be hashable.
Cache performance statistics stored in f.hits and f.misses.
Clear the cache using f.clear().
http://en.wikipedia.org/wiki/Cache_algorithms#Least_Recently_Used
- '''
+ """
def decorating_function(user_function):
cache = OrderedDict() # ordered least recent to most recent
kwd_mark = object() # separate positional and keyword args
return result
def clear():
- 'Clear the cache and cache statistics'
+ """Clear the cache and cache statistics"""
cache.clear()
wrapper.hits = wrapper.misses = 0