decorator中的return f(x)有什么用?@log的管辖范围?
def log(f):
def fn(x):
print 'call ' + f.__name__ + '()...'
return f(x) #这里x并未指定 具体值,返回f(x)有什么用?
return fn
@log #这里decorator的范围到哪?下面两行?下面三行?
def factorial(n):
return reduce(lambda x,y: x*y,
range(1, n+1))
print factorial(10)