import time def performance(f): def fn(*args, **kw): t1 = time.time() r = f(*args, **kw) t2 = time.time() print 'call %s() in %fs' % (f.__name__, (t2 - t1)) return r return fn @performance def factorial(n): return reduce(lambda x,y: x*y, range(1, n+1)) print factorial(10)
参考代码里,有几个地方不懂,求教
1:f(*args, **kw)是什么意思,也没有定义以f命名的函数,为什么可以这样用
2:还有一个是f.__name__ 为什么可以这么用?
相关分类