Nei*_*l G 7 python caching memoization lazy-evaluation
是否有一种Pythonic方法来封装一个惰性函数调用,在第一次使用该函数时f(),它调用一个先前绑定的函数,g(Z)并在连续调用时f()返回一个缓存值?
请注意,记忆可能不是一个完美的选择.
我有:
f = g(Z)
if x:
return 5
elif y:
return f
elif z:
return h(f)
Run Code Online (Sandbox Code Playgroud)
代码可以工作,但是我想重组它,这样g(Z)只有在使用该值时才会调用它.我不想改变它的定义g(...),并且Z缓存有点大.
编辑:我认为这f必须是一个功能,但情况可能并非如此.