闭包练习题

来源:12-5 reduce

fun_s

2018-01-04


老师,你好!我想问下tourist传入数值2、3、5后,为什么是传递到go这个函数的step参数里面?而不是factory这个函数里!

写回答

2回答

为了什么而活着

2018-01-08

因为在 factory 函数的尾部有一句 return go;

return 关键的作用就是将 go 这个函数返回给 factory 函数, 简单点就可以理解为现在的 factory 函数实际上就是 go 函数了。

所以说你在传参给 tourist的时候,实际上是传参给 factory 的,又因为 factory 函数 等价于 go 函数, 所以tourist 的传参最终还是传到了 go 函数里面。


以上是个人见解,希望能够帮到您。 

1
1
fun_s
那factory(1)呢?
2018-01-10
共1条回复

Seven_柒柒

2018-10-12

tourist = factory(1)

其实,先执行factory(1) --->函数执行完后return函数 go ---->赋值,tourist = go。变量指向函数。意味着把一个函数赋值给一个变量  ,tourist() 等价于 go()

tourist(2)--->go(2)  

而factory(1) 是你想错了。其实老师的是 tourist = factory(origin)。就是其中参数的意思是初始位置是0

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14598 学习 · 4470 问题

查看课程

相似问题