Ootme 发表于 2019-12-18 15:35:51

关于函数修饰符的问题

本帖最后由 Ootme 于 2019-12-18 17:46 编辑

def a(fn):
    print 'a'

    def d(st):
      print "--------------------------------"
      print st + 'd'#st在这个函数中的生命周期已经结束

    return fn


def b(fn):
    print 'b'
    return fn


@a
@b
def c(st):
    print "********************************"
    print st#这里是执行b、a,同时定义c

#下面是连续执行c函数三次,无视修饰符。
print "test"


为什么说 def a(fn)函数 最后返回C函数最后不是return fn   吗
不是很理解

zltzlt 发表于 2019-12-18 20:24:38

c 函数作为一个参数传进 a 里,最后的 return fn 就是 return c,因为 fn 参数为 c。
页: [1]
查看完整版本: 关于函数修饰符的问题