理解python的修饰符@

来源:互联网 发布:淘宝一号店商城 编辑:程序博客网 时间:2024/04/29 06:22

由于是从Java转过来的,看见python中有@修饰符时,很迷惑。看了一些网上的资料,感觉叙述的不太容易理解。自己想写一篇易于理解的。先来看一段程序:

运行的结果是:

note!
nothing

输出了“note!",spamrun方法已经运行过了。说明:

@spamrun是一个statement,会将useful当作参数传入来执行spamrun方法。

如果将上段代码中的useful(2,3)去年注释,输出为:

note!
10 15
20 30
nothing

这个输出结果说明:

spamrun方法运行完毕后,usefull方法已经指向sayspam方法了,而fn此时指向的是原来usefull的方法实体。