
15Python函数(二)返回值和作用域
48N6E
这个作者很懒,什么都没留下…
展开
-
2019/09/29 01-函数的返回值
函数的返回值,和作用域是非常重要的概念,作用域搞不清楚,函数就白学了,作用域学不清楚,高阶作用域函数装饰器就学不会了 函数都有返回值 *~~~~这句没执行说明上一句也没执行,在pycharm会显示这两局标红色,永远执行不到 只要碰到return,这个函数就结束了,后面的语句都视为没有* 有多条return语句就要看怎么写了 函数如果没有return语句,相当于有个隐藏的return语句,就是r...原创 2020-09-30 15:02:31 · 154 阅读 · 0 评论 -
2019/09/30 02-函数作用域
嵌套函数是让你理解递归是有帮助,最多建议三层 inner而是函数内部的定义,不管定义不定义都当 函数标识符来理解,函数内部的标识符对外部都是不可见的(a和inner) 函数一旦封装,里面的这些变量,是不可见的,有个概念通过这个可见的范围来讲就是作用域,这个变量标识符在外面是看不到的,这个标识符其实是有作用范围的,作用范围就是在函数的内部,它的作用域是在函数的内部,inner标识符围在了out...原创 2020-09-30 15:03:26 · 112 阅读 · 0 评论 -
2019/09/30 03-global、nonlocal和闭包
函数有个作用范围,什么东西有作用域就是标识符,能否在某个环境应用标识符,就是是否能看见,这个范围就称为标识符的作用域 x=5在外部定义的,可以理解为全局的 如果想要外部使用函数内部的定义的变量是不被允许的,因为函数是一种封装,封装内部的东西在内部是不可见的 x=x+1,是赋值语句,相当在这个局部作用域赋值即重新定义,作用域在这个函数内部,这个x是重新定义,只能用在当前函数中,本身语法是允许的 ...原创 2020-09-30 15:03:34 · 177 阅读 · 0 评论 -
2019/10/01 04-默认值的本质
默认值的作用域 xyz是在函数里的局部作用域 这种和上面一种有何区别 没追加上去说明用的不是同一个东西 因为后面的foo[1]相当于同一种方式,指的是传入了一个 用到了缺省值和没用到缺省值的区别 有追加效果用的是同一个,没有就不是同一个 第一次传参,1.append 1打印 1.1 第二次无参数,使用缺省值1.append 1.1 第三次,根据上一次的,继续append 1.1.1 主要是引用...原创 2020-09-30 15:03:42 · 186 阅读 · 0 评论 -
2019/10/01 05-LEGB和函数的销毁
作用域其实有个搜索顺序,LEGB原则,变量名解析原则 按照LEGB的顺序来搜索,一层层向外找,像洋葱 L,local,本地作用域,局部作用域的local命名空间。函数调用时创建,调用结束消亡(可以把形参当做局部变量来看) 函数创建这个local变量创建,函数调用结束消亡,存活时间就是一次函数的调用过程 这两个都可以认为是局部变量,因此作用域可以理解是local Enclosing,在pytho...原创 2020-09-30 15:03:49 · 99 阅读 · 0 评论