闭包
就是将数据封装在一个包(区域)中,使用时再去里面取。本质上,闭包是基于函数嵌套搞出来的一种特殊嵌套
- 闭包的应用场景,1:封装数据防止污染全局
装饰器
点击查看代码
import time
import functoolsdef func(a, b):print("执行函数func....")print(f"正在计算{a} + {b} ......")res = a + btime.sleep(3)print(f"函数执行结束,结果是:{a+b}")# 当我们要计算func执行时间时,就可以通过不改变fun内部代码,通过装饰器实现
def cal_time(func):@functools.wraps(func)def wrapper(*args, **kwargs):start = time.time()print(f"开始时间:{start}")res = func(*args, **kwargs)end = time.time()print(f"结束时间:{start}")print(f"总花费时间:{end-start}")return resreturn wrapper@cal_time
def func_1(a, b, c):print("执行函数func....")print(f"正在计算{a} + {b} + {c}......")time.sleep(3)print(f"函数执行结束,结果是:{a+b+c}")return a + b + cif __name__ == '__main__':v_1 = func_1(1, 2, 3)print(v_1)print(func_1.__name__)