笨鸟学飞 发表于 2020-10-26 15:32:41

关于修饰符的一点学习心得

照搬的有点看不太懂,搜索引擎折腾了半小时总算是弄明白了
@test   表示将随后紧跟的函数或类对象作为参数,调用test()函数
例如
@test
def x():
                表示test(x),
@test
class F:
                表示test(F)...
================下面有个详解函数例子================
def test(func):
    func()       #3..调用fun()------10..返回后继续执行
    print "call test"#11..打印'call test'

def test1(f):
    f()               #6..调用fun1()
    print "call test1"#7..打印'call test1'------8..随后返回上一层调用,即5..

def main():
    @test      #2..调用test(fun).
    def fun():
      print "call fun"   #4..打印‘call fun’
      @test1            #5..调用test1(fun1)------9..返回后,返回上一层调用,即3..
      def fun1():
            print "call fun1"#6..打印‘call fun1’

main()         #1..调用main()函数。


页: [1]
查看完整版本: 关于修饰符的一点学习心得