装饰器函数
import time # 装饰器函数 def log_cat(flag='false'): # 加一层可以进行参数传递 def time_def(f): def inner(*args): start = time.time() f(*args) end = time.time() s_e = end - start print("时间:%s" % s_e) if flag == "True": pass return inner return time_def @log_cat("True") # 等价于 @time_def @time_def 等价于 foo = time_def(foo) def add(*args): sum_args = sum(args) print(sum_args) time.sleep(1) add(1, 3, 5, 6, 9) # 已原来的方式调用,不改变调用方式 @log_cat() def foo(): print("foo1....") time.sleep(3) foo()