11.需要了解一个函数返回的是一个对象。-----在返回值后加 ( ) 就可以执行对象
2.是在一个函数中是传入的是一个对象。-----然后在函数中执行
第三行中,定义一个函数传递一个函数对象作为参数。
第四行中,定义了一个在函数内部的函数,必须返回这个函数或者在外函数中执行。不然没有意义。
第五行中,执行参数对象,
第六行中,执行在装饰器中想执行的代码这里只是演示。
第7行是 aaa()的返回 ,对应的是prints()()的第二个括号,第一个括号是执行第一个返回aaa对象,行8
第13行中 是装饰器 等于什么了 --> prints = jgl(prints) #这里传递的参数是一个对象,如果你传递的是prints(),那么prints对象必须要有return ,这样jgl()接受就是参数就是一个prints的返回值。
大体过程是这样的:
@jgl ---->prints获得一个新的函数 被装饰器装饰过的函数
jgl(prints):
def aaa():
prints()
print(“fasdfda”)
return aaa
prints() 使用新对象
网友评论