Python新手,学习廖雪峰老师的Python教程。
此题出处为廖雪峰老师的官方网站的装饰器一节。
import time,functools
def _time(func):
@functools.wraps(func)
def wrapper(*args,**kw):
t1 = time.time()
a = func(*args,**kw)
print('%s execute in %s ms'%(func.__name__,100*(time.time()-t1)))
return a
return wrapper
@_time
def fn(x):
return x**2
list(map(fn,[1,2,3,4,5]))
#fn execute in 0.0 ms
#fn execute in 0.0 ms
#fn execute in 0.0 ms
#fn execute in 0.0 ms
#fn execute in 0.0 ms
#[1, 4, 9, 16, 25]