python @的作用

来源:互联网 发布:流程图描述KMP算法 编辑:程序博客网 时间:2024/06/05 10:44

这只是我的个人理解:
在Python的函数中偶尔会看到函数定义的上一行有@functionName的修饰,当解释器读到@的这样的修饰符之后,会先解析@后的内容,直接就把@下一行的函数或者类作为@后边的函数的参数,然后将返回值赋值给下一行修饰的函数对象。
比如:
@a
@b
def c():

python会按照自下而上的顺序把各自的函数结果作为下一个函数(上面的函数)的输入,也就是a(b(c()))

def funA(a):    print 'funA'def funB(b):    print 'funB'@funA@funBdef funC():    print 'funC'result:>>> ================================ RESTART ================================>>> funBfunA

则整个程序的执行过程就是funA(funB(funC))

0 0
原创粉丝点击