global:更改全局变量nonlocal:更改函数内部的外层变量
闭包函数: 1 内部函数 2 包含对外部作用域而非全局作用域的引用
f.__closure__
闭包函数的特点: 自带作用域 延迟计算 一 开放封闭原则,对扩展是开放的,对修改是封闭的二 装饰器,本质是任意可调用对象,被装饰的对象也可以是任意可调用对象 装饰器的功能是 原则: 1 不修改源代码 2 不修改调用方法 目标:添加新功能