1. 首页
  2. 编程语言
  3. Python
  4. Python 的lru_cache装饰器使用简介

Python 的lru_cache装饰器使用简介

上传者: 2022-02-05 10:54:13上传 PDF文件 154.41 KB 热度 20次

Python 的 lru_cache 装饰器是一个为自定义函数提供缓存功能的装饰器。从输出结果中可以看出,存在着严重的重复计算情况,比如 fibonacci 就被计算了 5 次之多。这还只是计算 6 次的 fibonacci 函数。2 优化上面的示例代码加入 lru_cache 装饰器:运行结果:这次不存在重复计算现象,因此性能得到极大的提升。3 比较利用 cProfile 进行性能比较分析。它是一种确定性分析器,只测量 CPU 时间,并不包含内存消耗和其他与内存相关联的信息2。假设我们需要计算 fibonacci 求和值。不使用 lru_cache 装饰器这个递归函数内部总共调用了 1000 多万次的 fibonacci() 函数!利用 cache_info() 函数,我们还可以看到命中次数 hits,未命中次数 misses ,最大缓存数量 maxsize 和 当前缓存大小 currsize。

下载地址
用户评论