day10

命名空间和作用域

内置命名空间:python解释器一启动就可以使用的名字存储在内置命名空间中,如print,input,list,tuple

全局命名空间:程序从上到下被执行过程中依次加载进内存的;放置了我们设置的所有变量名和函数名

局部命名空间:函数内部定义的名字,使用locals()查看

对于不可变数据类型,在局部可查看全局作用域中的变量,但是不能直接修改,如果想要修改,需要在程序的一开始增加global声明

globals打印全局

locals输出靠所在位置

函数的嵌套和作用域链

nonlocal 声明一个上层的局部变量,离当前函数最近的一次局部变量

函数名可以赋值,可以作为容器类型的元素,可以作为函数的参数,可以作为返回值

闭包

闭包一定是嵌套的函数,且内部函数调用外部函数的变量。return 闭包

在函数外部使用内部的函数

https://www.cnblogs.com/Eva-J

 

posted on 2020-01-28 01:04  CodeLabourer  阅读(129)  评论(0)    收藏  举报