闭包问题
来源:11-16 再用闭包解决一下_

夏雪忆冬
2018-05-10
origin = 0
def factory(pos):
def go(step):
nonlocal pos #强制声明pos 不是局部变量
new_pos = pos + step
pos = new_pos
return new_pos
return go
闭包形成 不是说的要“函数”+“环境变量”吗?怎么没有在 go()函数前定义一个环境变量,并在go()函数里去引用环境变量?
有点与前几节看的定义不一样啊,老师,我哪里理解错误呢?
是不是pos 就是那个环境变量?
写回答
2回答
-
jimwhile
2018-09-07
第一次传入的是参数,经过函数处理后变成环境变量了
00 -
慕桂英8092138
2018-05-11
我觉得可以这样理解,当调用factory(pos)时,这个环境变量就是pos
012018-05-12
相似问题