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