带有参数的装饰器

#带有参数的装饰器
import time
def deco(func):
def wrapper(a,b):
startTime = time.time()
func(a,b)
endTime = time.time()
msecs = (endTime - startTime)*1000
print("time is %d ms" %msecs)
return wrapper
@deco
def func(a,b):
print("hello,here is a func for add :")
time.sleep(1)
print("result is %d" %(a+b))
if __name__ == '__main__':
f = func
f(3,4)
不明白为啥在做函数调用的时候f(3,4),要回到
wrapper(a,b)函数的这一句执行:
startTime = time.time()

猜你喜欢

转载自www.cnblogs.com/yibeimingyue/p/9318300.html