# 1.两个参数
def wai(fun):
def nei(n,y):
print('检查 传递的参数是 %d =' % n)
print('==函数调用前的检查==')
print(n,y) #函数调用 传递实际参数
return nei
@wai
def foo(a,b):
print('==foo==')
print('==foo==参数是 %d' % a)
foo(1,3)
# 2.不定长参数
def wai(fun):
def nei(*args,**kwargs):
print('检查 传递的参数是 ' , % args)
print('==函数调用前的检查==')
fun(*args,**kwargs)
return nei
@wai
def foo(*args,**kwargs): # *a() **a{}
print('==foo==')
print('==foo==参数是' , args)
print('==foo==参数是' , kwargs)
foo(1,2,3,4,5,6,'a',a=1,b=2,c='a')
# 3.返回值
def wai(fun):
def nei():
print('==函数调用前的检查==')
return('fun())
return nei
@wai
def foo():
return('==foo==')
print(foo())
# 4.增加外部 参数传递
def jsq(a):
def wai(fun) :
def nei() :
print('函数调用前的检查==')
print('判断需要使用参数 这里 接受',a)
return nei
return wai
@jsq(12345)
def foo():
return('==foo==')
foo()
网友评论