作用域:作用范围
#命名空间:划分一块区域保存所有的数据,以字典方式存储(变量与值形成映射关系) #内建命名空间:解释器启动时创建,直到解释器运行结束,生存周期最长 #全局命名空间:文件运行时创建,直到解释器运行结束,生存周期较长 #局部命名空间:函数调用时,里面的局部变量创建,调用结束时释放,生命周期较短
创建顺序
python解释器启动->创建内建命名空间->创建全局命名空间->创建局部命名空间
销毁顺序
函数调用结束后->销毁对应局部命名空间数据->销毁全局命名空间数据->销毁内建命名空间数据
内部函数
内部函数不能直接在函数外部调用 调用外部函数后,内部函数不可以在函数外部调用 内部很熟可以再函数内部调用 内部函数在函数内部调用时,具有先后顺序,必须是先定义在调用
LEGB原则
#找寻变量的调用顺序采用LEGB原则(就近原则) L -- Local当前函数内的作用域(局部作用域) E -- Enclosing 外部嵌套函数的作用域(嵌套作用域) G -- Global 函数外部所在的命名空间(全局作用域) B -- Builtin python内置模块的命名空间(内建作用域)
标签:调用,函数,Python,创建,空间,作用域,命名 From: https://www.cnblogs.com/songyunjie/p/16825423.html