Python闭包与延时求值

闭包可以实现先将参数传递给一个函数,而不立即运行,在被调用的时候才运行

使用函数定义中再定义函数的方式来实现

def foo():
x=3
def bar():
print('x is %d'%x)
return bar


if __name__ == '__main__':
print('after call function foo')
pfoo=foo()
print('after call function pfoo')
pfoo()

输出结果为:

after call function foo
after call function pfoo
x is 3

posted @ 2017-02-06 14:39  XavierLee  阅读(342)  评论(0编辑  收藏  举报