我尝试为可以计算Python中另一个函数的运行时间的方法制作装饰器
def timer(func):
def smallfunctimer(*args,**kwargs):
res=func(*args,**kwargs)
tm=timeit.Timer(lambda:res)
print("Function time: ", tm)
return smallfunctimer
@timer
def deposit(self,amount):
self.balance+=amount
self.queue.append(BankTransaction(amount))
但我称之为
ba=BankAccount(1,100)
ba.deposit(10000000)
我明白了:
Function time: <timeit.Timer object at 0x0281D370>
我怎样才能在几秒钟内获得运行时间?
答案 0 :(得分:2)
您创建了timeit.Timer()
instance;你需要在该实例上调用一个方法来实际运行代码:
print("Function time: ", tm.timeit(1000))
会给你1000次运行该功能的时间。