gpt4 book ai didi

python - python是否重复计算函数的值在一个公式中出现多次

转载 作者:太空宇宙 更新时间:2023-11-03 14:49:30 25 4
gpt4 key购买 nike

在python中,如果我有一个函数

f(x)=(g(x)+1)(g(x))

g(x) 是之前定义的,需要时间来计算。

像这样的事情

def g(x):
return value
def f(x):
return (g(x)+1)*(g(x))

当我计算 f(x) 时,将 g(x) 代入等式时,python 会计算 g(x) 两次吗?如果确实计算了两次,人们通常如何在 python 中处理它?<​​/p>

最佳答案

根据函数g(x),是的,每次调用都会重新计算。内存函数 (Wikipedia) 只需要为 x 的给定值计算一次值。例如:

def g(x):
if cache[x]:
return cache[x]
else:
result = # calculate g(x)
cache[x] = result
return cache[x] # or return result

关于python - python是否重复计算函数的值在一个公式中出现多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46935418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com