上节课复习:
1、函数参数
形参
位置形参
默认形参
实参
位置实参
关键字实参key=value
*与**
形参=》汇总
*args,**kwargs
实参=>打撒
*可以被循环的类型
**字典
2、特殊形式
def wrapper(*args,**kwargs): # args=(1,2,3) kwargs={"a":1,"b":2}
index(*args,**kwargs) # index(*(1,2,3),**{"a":1,"b":2})
# index(1,2,3,a=1,b=2)
wrapper(1,2,3,a=1,b=2)
3、函数对象
def index(): # index=函数index的内存地址
print("index")
def foo(func): # func=函数index的内存地址
return func # return 函数index的内存地址
res=foo(index) # foo(函数index的内存地址)
res()
4、函数嵌套
def max4(a,b,c,d):
res1=max2(a,b)
res2=max2(res1,c)
res3=max2(res2,d)
return res3
def f1():
def f2():
pass
def f1():
x=10
def f2(): # f2=内存地址
print(‘from f2‘)
return f2
res=f1()
print(res)
res()
今日内容:
1、名称空间与作用域
2、闭包
函数对象+函数嵌套定义+名称空间与作用域=》闭包函数
3、装饰器
原文:https://www.cnblogs.com/dachangtui/p/14050598.html