不太理解,先做个记录

返回函数:函数没有立刻执行,而是将变量全部封存起来


#!/usr/bin/python

def count():
fs = []
for i in range(1, 4):
def f(j):
def g():
return j*j
return g #返回了g的函数地址,这个地址里存了j*j的值
fs.append(f(i)) #将g的函数地址追加到fs中
return fs #返回的是list, 这个list里存的都是函数的地址

f1, f2, f3 = count();
print f1(), f2(), f3()

print 'count():', type(count())
print 'f1:', type(f1)
print 'f1():', type(f1())