This commit is contained in:
blueloveTH 2023-05-21 15:38:07 +08:00
parent c20d16d4f6
commit f6865aa595
2 changed files with 8 additions and 15 deletions

View File

@ -1,9 +1,9 @@
def cache(f): def cache(f):
def wrapper(*args): def wrapper(*args):
if not hasattr(f, 'cache'): if not hasattr(f, '__cache__'):
f.cache = {} f.__cache__ = {}
key = args key = args
if key not in f.cache: if key not in f.__cache__:
f.cache[key] = f(*args) f.__cache__[key] = f(*args)
return f.cache[key] return f.__cache__[key]
return wrapper return wrapper

View File

@ -1,14 +1,7 @@
from functools import cache
def cache(f): @cache
def wrapper(*args): @cache
if not hasattr(f, 'cache'):
f.cache = {}
key = args
if key not in f.cache:
f.cache[key] = f(*args)
return f.cache[key]
return wrapper
@cache @cache
def fib(n): def fib(n):
if n < 2: if n < 2: