每个Python程序员都应该了解标准库的Lru_cache
|
因此,换句话说,使用相同的参数调用外部服务时,每个参数大约要重复执行1000次。 像这样的情况是使用缓存的主要用例。缓存一个函数意味着无论何时首次计算函数的返回值,都会将其输入和结果放在字典中。 对于每个后续函数调用,首先通过查看缓存来检查结果是否已经计算过。如果在缓存中找到了,那就很完美,不需要再次计算!如果没有找到,就计算结果并将输入和结果存储在缓存中,以便下一个函数调用时查找到它。 Python标准库附带了许多鲜为人知但功能强大的软件包。对于本示例,将使用functools中的lru_cache。(LRU代表“最近最少使用(Least Recently Used)”,正如字面意思,这明确意味着缓存将保留最近的输入/结果对。) 从Fun(c)tools中导入lru_cache
把c放进括号中有点像一个蹩脚的笑话,因为这样functools就变成了fun tools(有趣的工具),使用缓存当然很有趣! 这就完成了!距离Python缓存仅一行代码之遥。毕竟它并没那么可怕。 在初始示例中,我在Pandas数据框上使用了数据转换。值得一提的是,缓存的函数可以传递给Pandas apply,而无需进行其它的任何更改。
是不是很棒?你也来试试吧~ (编辑:鞍山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
