函数的返回值可以是函数:
def f():
print 'f...'
def g():
print 'g...'
return g
执行x=f()后,x=g,只是指向g(),但并没有执行g()。只有执行了x(),才相当于执行了g()。所以,返回函数其实就是延后了函数具体计算的时间。
我们看一下具体执行结果:
函数的返回值可以是函数:
def f():
print 'f...'
def g():
print 'g...'
return g
执行x=f()后,x=g,只是指向g(),但并没有执行g()。只有执行了x(),才相当于执行了g()。所以,返回函数其实就是延后了函数具体计算的时间。
我们看一下具体执行结果: