人烟 发表于 2020-8-12 15:33:46

小甲鱼python书上闭包知识点的疑惑

https://s1.ax1x.com/2020/08/12/avVz1f.jpg

向师傅们请教一个问题,这里定义了funX(x)函数 ,然后在funX(x)函数里内嵌了一个funY(y)函数,这个funY(y)函数里写了return x * y,此处的x是拿的外部函数funX(x)的参数,y是自己的参数,然后在外部函数来调用这个内嵌函数。 现在在外面把funX(8)赋值给temp,那么x现在已经等于8了,接着再执行temp(5),就可以直接返回8 * 5的结果,我的问题是这个y的值5是怎样赋给内嵌函数的参数y的,这是怎样一个过程?

zltzlt 发表于 2020-8-12 15:35:47

由于 funX 的返回值就是 funY 本身,所以 temp = funX(8) 后 temp 就是 funY,之后传入参数 5 给 funY

qiuyouzhi 发表于 2020-8-12 15:36:24

temp = funX(8)
这时,temp等于funX的返回值,也就是funY。
所以说,temp == funY

人烟 发表于 2020-8-12 15:39:11

qiuyouzhi 发表于 2020-8-12 15:36
这时,temp等于funX的返回值,也就是funY。
所以说,temp == funY

谢谢师傅 了解了!

A.Lyapunov 发表于 2020-8-12 15:44:38

zltzlt 发表于 2020-8-12 15:35
由于 funX 的返回值就是 funY 本身,所以 temp = funX(8) 后 temp 就是 funY,之后传入参数 5 给 funY

请问可以麻烦你看一下我今天上午发的帖子吗,关于wxpython,wx.MessageBox,如何让这个对话窗口弹出在最前面

zltzlt 发表于 2020-8-12 16:02:49

A.Lyapunov 发表于 2020-8-12 15:44
请问可以麻烦你看一下我今天上午发的帖子吗,关于wxpython,wx.MessageBox,如何让这个对话窗口弹出在最前 ...

今天上午发的帖?没看到哦

A.Lyapunov 发表于 2020-8-12 16:07:28

zltzlt 发表于 2020-8-12 16:02
今天上午发的帖?没看到哦

是保存为草稿了。。我太蠢了,现在发表了,麻烦解答一下
页: [1]
查看完整版本: 小甲鱼python书上闭包知识点的疑惑