搞不太清楚闭包,求助呜呜呜
def count():def f(j):
def g():
return j*j
return g
fs = []
for i in range(1, 4):
fs.append(f(i)) # f(i)立刻被执行,因此i的当前值被传入f()
return fs
不明白为什么多一个DEF的函数就可以把参数绑定 都看不太明白你想问个啥
def count(): #2.
def f(j): #6.
def g():
return j*j
return g #7.把对象g返回给第5步调用处
fs = [] #3.注意看缩进
for i in range(1, 4):#4.
fs.append(f(i)) #5.把i作为参数传入并调用f()函数
return fs #8.把列表返回
#先加1个调用,再分析代码运行过程
c=count()#1.调用函数
页:
[1]