def index(x,y):
print(x,y)
def wrapper(*args,**kwargs):
index(*args,**kwargs) #
# index(y=222,x=111)
wrapper(y=222,x=111)
2.名称空间与作用域:名称空间的的"嵌套"关系是在函数定义阶段,即检测语法的时候确定的
3.函数对象
3.1可以把函数当作参数传入
3.2可以把函数当作返回值返回
def index():
return 123
def foo(func):
return func
foo(index)
4.函数的嵌套定义
def outter(func):
def wrapper():
pass
return wrapper
5.闭包函数
def outter():
x=111
def wrapper():
x
return wrapper
f=outter()
6.
传参的方式一:通过参数的形式为函数体传值
def wrapper(x):
print(1)
print(2)
print(3)
x
wrapper(1)
wrapper(2)
wrapper(3)
传参的方式二:通过闭包的方式为函数体传值
def outter(x):
# x=1
def wrapper():
print(1)
print(2)
print(3)
x
return wrapper
# return outter内的wrapper那个函数的内地址
wrapper=outter(1)