灵活的装饰器
Posted 飞翔的浮士德
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了灵活的装饰器相关的知识,希望对你有一定的参考价值。
# 如果fib函数执行次数过多时,通过装饰器来改进效率
# 我们可以用字典来保存计算过的结果,防止重复
def memoize(f): memo = {} def helper(x): if x not in memo: memo[x] = f(x) return memo[x] return helper @memoize def fib(n): if n == 0: return 0 elif n == 1: return 1 else: return fib(n-1) + fib(n-2) def fib_seq(n): res = [] if n > 0: res.extend(fib_seq(n-1)) res.append(fib(n)) return res fib_seq(30)
以上是关于灵活的装饰器的主要内容,如果未能解决你的问题,请参考以下文章