首页 > 其他 > 详细

函数的嵌套和作用域链

时间:2019-07-17 16:38:08      阅读:94      评论:0      收藏:0      [点我收藏+]

def max(a,b):

  return a if a>b else b

def the_max(x,y,z):#函数的嵌套调用:函数里面由别的函数

  c=max(x,y)

  return max(c,z)

#函数的嵌套定义:执行流程1->2->3->4->5

1  def outer():

3    def inner():

5      print("inner")

4    inner()

2  outer()

内部函数可以使用外部函数变量,不能修改

函数都是先定义后调用。

nonlocal():只能用于局部变量,找上层中离当前函数最近一层的局部变量,内部声明了nonlocal的内部函数的变量修改

python引用变量的顺序: 当前作用域局部变量->外层作用域变量->当前模块中的全局变量->python内置变量

函数名的本质:

函数名就是内存地址,函数名可以赋值,函数名可以作为容器类型的元素,函数名可以作为函数的参数,函数名可以作为函数的返回值,属于第一类对象。

函数的嵌套和作用域链

原文:https://www.cnblogs.com/panglinl/p/11201439.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!