import time
#python闭包打印日志功能
def log_wraper(func):
#由于被装饰的函数需要传参,这里加上*args,**kwargs
def inner(*args,**kwargs):
start_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
func(*args,**kwargs)
end_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
print("logging: func:{} runs from {} to {}".format(func.__name__,start_time,end_time))
return inner
@log_wraper
def fib_recur(n,lis=[]):
"""
#斐波那契额数列--递归
"""
assert n >= 0,"peter,n > 0"
for i in range(n):
if i == 0 or i == 1:
lis.append(1)
else:
lis.append(lis[i-1] + lis[i-2])
print(lis)
if name == 'main':
fib_recur(20)