Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python lru_cache

作者:屰兲洏垳&   发布日期:2026-07-25   浏览:87

from functools import lru_cache

# lru_cache 是一个装饰器,用于缓存函数的返回值。
# 它使用最近最少使用(LRU)算法来管理缓存,当缓存满时会移除最久未使用的缓存项。

@lru_cache(maxsize=128)  # maxsize 参数定义了缓存的最大大小,默认是 128。如果设置为 None,则表示无限制。
def fibonacci(n):
    if n < 2:
        return n
    return fibonacci(n-1) + fibonacci(n-2)

# 调用示例
print(fibonacci(10))  # 输出: 55
print(fibonacci(5))   # 输出: 5
print(fibonacci(10))  # 这次调用会被缓存命中,直接返回结果,不会重新计算

解释说明:

  • @lru_cache(maxsize=128):这是一个装饰器,用于缓存函数的结果。maxsize参数指定了缓存的最大条目数,超过这个数量后,最久未使用的缓存项将被移除。
  • fibonacci(n):这是一个递归函数,用于计算斐波那契数列的第 n 项。由于使用了 lru_cache,重复的计算会被缓存,从而大大提高性能。

上一篇:python 数组转json

下一篇:python scheduler

大家都在看

python 二维码识别

python excel 库

python时间格式

pythoneval函数用法

列表切片操作python

python读取文件路径

python windows下文件路径写法

python集合中的元素可以是列表

staticmethod在python中有

python 保存json文件

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站