python中的记忆需要什么

python中的记忆需要什么,python,memoization,Python,Memoization,我在读这篇文章 事实上,任何人都可以举例说明如果我不使用它会发生什么。我找不到它解决了哪个问题。我只想知道两个例子,一个是没有记忆的简单例子,另一个是有记忆的例子,这样我就能明白为什么我们要用它 若示例可以基于web realted stuff或Django,那个将是很好的,这样我可以更好地理解它。我对算法不太在行记忆缓存(存储)最近使用的函数结果,以便以后可以快速检索它们。基本上,如果你知道一个函数很慢,但大多数时候都有相同的结果,那么它会很有帮助。简单解释一下,我会这样问。这段文字中有多少

我在读这篇文章

事实上,任何人都可以举例说明如果我不使用它会发生什么。我找不到它解决了哪个问题。我只想知道两个例子,一个是没有记忆的简单例子,另一个是有记忆的例子,这样我就能明白为什么我们要用它


若示例可以基于web realted stuff或Django,那个将是很好的,这样我可以更好地理解它。我对算法不太在行

记忆缓存(存储)最近使用的函数结果,以便以后可以快速检索它们。基本上,如果你知道一个函数很慢,但大多数时候都有相同的结果,那么它会很有帮助。

简单解释一下,我会这样问。这段文字中有多少个“E”字符

现在,第一个文本块中有多少个“E”字符

现在,第一个文本块中有多少个“E”字符

最后,第一个文本块中有多少个“E”字符


如果你想知道,第一个街区有9个e和2个e。到第二遍时,你可能已经记住第一个街区有多少个“E”。这是对文本块上的
count
函数/方法的记忆。

如果您有一个函数,给定一组参数将始终返回相同的值,那么您可以“记住”如果您已经计算了结果,那么如果函数需要很长时间进行计算,您就不必在以后再次计算结果。当然,您通常只想记住一定数量的答案(在您的内存限制范围内)。@mgilson函数如何返回相同的结果。有什么例子吗?如果每个参数的结果都是相同的,那么为什么我不能把它放在变量中而不是函数中呢?例如:
def square(x):return x*x
——给定一个特定的x值,它总是返回相同的东西。这是一个微不足道的函数。想象一个更复杂的事情,需要很多步骤才能完成。我们如何知道需要在缓存中存储多少项