我有一个非常非常基本的记忆装饰器,我需要在下面进行优化:
def memoize(function):
memos = {}
def wrapper(*args):
try:
return memos[args]
except KeyError:
pass
result = function(*args)
memos[args] = result
return result
return wrapper
这样做的目的是使它不会添加到调用堆栈中。它现在实际上翻了一番。我意识到我可以将它嵌入到一个功能一个功能的基础上,但这不是我们想要的,因为我想要一个用于记忆的全局解决方案。有任何想法吗?