实现一个系统,在这个系统中,当涉及到繁重的数学提升时,我想做的尽可能少。
我意识到numpy对象的内存化存在问题,因此实现了一个惰性键缓存,以避免整个“过早优化”的争论。
def magic(numpyarg,intarg):
key = str(numpyarg)+str(intarg)
try:
ret = self._cache[key]
return ret
except:
pass
... here be dragons ...
self._cache[key]=value
return value
但由于字符串转换需要相当长的时间...
t=timeit.Timer("str(a)","import numpy;a=numpy.random.rand(10,10)")
t.timeit(number=100000)/100000 = 0.00132s/call
人们有什么建议是“更好的方式”呢?
https://stackoverflow.com/questions/5386694
复制相似问题