为什么结果会出现三个数?
def count():
fs = []
for i in range(1, 4):
def f(j):
def g():
return j*j
return g
r = f(i)
fs.append(r)
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
请问各位大佬,这里为什么输出是 f1()= 1, f2()=4, f3()=9
当f1()调用时,函数count()不是会连续执行3次循环得到9返回吗?
难道只是执行一次就返回值1?