python如何使用lru_cache缓存

python如何使用lru_cache缓存

这篇文章主要为大家展示了“python如何使用lru_cache缓存”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“python如何使用lru_cache缓存”这篇文章吧。

lru_cache 缓存

位于functools模块的lru_cache装饰器提供了缓存功能,如下结合它和递归求解斐波那契数列第n:

python如何使用lru_cache缓存

importfunctools@functools.lru_cache(maxsize=128)deffibonacci(n):ifn==0:return0elifn==1:return1returnfibonacci(n-1)+fibonacci(n-2)

因此,下面的递归写法非常低效,存在重复求解多个子问题的情况:

deffibonacci(n):ifn==0:#Thereisno0'thnumberreturn0elifn==1:#Wedefinethefirstnumberas1return1returnfibonacci(n-1)+fibonacci(n-2)

以上是“python如何使用lru_cache缓存”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注恰卡编程网行业资讯频道!

发布于 2022-03-13 23:42:54
收藏
分享
海报
0 条评论
24
上一篇:css新浪首页顶部栏怎么实现 下一篇:伪类如何与CSS类配合使用
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码