有没有办法memo
在函数外访问变量memorize
?我知道如果我将它变成一个函数属性,它可能会被访问:memorize.memo
但是我想知道是否有办法按原样访问它......
这是代码:
def memorize(f):
memo = {}
def helper(x):
if x not in memo:
memo[x] = f(x)
return memo[x]
return helper
@memorize
def fib(n):
if n == 0:
return 0
elif n == 1:
return 1
else:
return fib(n-2) + fib(n-1)