|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import time
class timeslong:
def __init__(self,func):
self.f = func
def __call__(self):
start = time.clock()
print("It's time starting ! ")
self.f()
print("It's time ending ! ")
end = time.clock()
return "It's used : %s ." % (end - start)
@timeslong
def f():
y = 0
for i in range(10):
y = y + i + 1
print(y)
return y
print(f())
g=timeslong(f)
g()
#这个程序在运行g()的时候,会把it’s time starting和 it’s time ending这句话打两遍,不知道为什么? 函数装饰器的运行原理是什么,其中的关键点在哪里? 尤其是@deco 这句话的等价表达形式是? 多谢! |
|