假设我有一个方法,可以从给定的参数创建一个字典:
def newDict(a,b,c,d): # in reality this method is a bit more complex, I've just shortened for the sake of simplicity
return { "x": a,
"y": b,
"z": c,
"t": d }
我还有另一种方法,每次执行时都会调用newDict方法。因此,最终当我查看我的cProfiler时,会看到类似于这样的结果:
17874 calls (17868 primitive) 0.076 CPU seconds
当然,我的newDict方法被调用了1785次。现在,我的问题是是否可以记忆化newDict方法以减少调用次数?(只是为了确保,尽管我不确定它是否对记忆化函数产生影响,但变量几乎在每次调用中都会改变。)
子问题:我认为17k次调用太多了,代码效率不高。但是通过查看统计数据,您能否也请说明这是否是正常结果,或者我调用次数过多,代码运行缓慢?