wenjiew 发表于 2018-1-12 21:51:27

请问一下 pos_x=legal_x - (new_x - legal_x) 这个是什么意思呢,如果X的坐标超过了它的范围,会怎么样?

zero月蚀的假面 发表于 2018-1-16 15:52:00

wenjiew 发表于 2018-1-12 21:51
请问一下 pos_x=legal_x - (new_x - legal_x) 这个是什么意思呢,如果X的坐标超过了它的范围,会怎么 ...

这个是求超过左边范围-100时的情况,超过范围会撞墙往回走,-110走到-100后会返回走-10,所以得-90

zero月蚀的假面 发表于 2018-1-16 16:21:55

move = creat()
print(move())
print(move())
print(move())
这里闭包的作用是避免移动位置重新归零,
即第一次移动(10,0)第二次在第一次基础上移动(10,70),第三次移动后为(0,70)
因为creat()函数中的(pos_x,pos_y)并没有被释放仍然存在,除非move被重新赋值

chijiahao 发表于 2018-1-18 18:11:12

学习学习

punkant 发表于 2018-1-19 15:02:48

{:10_266:}没看懂

checkily 发表于 2018-1-23 09:15:51

基本看懂了,努力今天把这个代码自己写出来。

AdaHao 发表于 2018-1-27 12:37:25

看看

温江 发表于 2018-1-29 20:55:22

感觉鱼币很难得到

小邪 发表于 2018-1-30 10:13:14

录制的零基础入门学习python的第二十章内嵌函数和闭包的第十七分零十秒左右把零基础入门学习python说成了零基础入门学习C语言{:10_256:}

晓屁屁 发表于 2018-2-5 22:17:44

学习学习 学习现在感觉一天的时间真的不够用

ps。student 发表于 2018-2-12 16:22:25

加油

jioumax 发表于 2018-2-23 14:44:10

打卡

qazx900haha 发表于 2018-3-1 23:50:13

小邪 发表于 2018-1-30 10:13
录制的零基础入门学习python的第二十章内嵌函数和闭包的第十七分零十秒左右把零基础入门学习python说成了零 ...

我回头看了,是真的,这位同学好细心,不扶墙,就服你

luvm 发表于 2018-3-6 21:51:49

这个程序没看懂。。。

actx23a 发表于 2018-3-7 14:08:09

不用nonlocal 也可以吧?

Chase_Kas 发表于 2018-3-7 20:29:56

闭包对于一个新手来说还是需要时间理解的,其实就是相当于return了一个函数,后面带操作数就能得到相应的值,而且这个闭包不会被释放

Niklaus_ncl 发表于 2018-3-9 10:14:43

看懂了,好感动
{:9_228:}

阿毛~~~ 发表于 2018-3-13 11:20:00

我是从鱼c老师的书上过来的,第一次听到闭包的概念,大致了解了下,我想鱼c老师的这段代码并不是为了让大家了解坐标的移动位置的语句循环处理的,大家太过于执着代码整个本身,其实我觉得鱼c老师是让大家更贯彻的理解闭包概念,

阿毛~~~ 发表于 2018-3-13 11:39:24

我觉得鱼C老师只是为了让大家明白什么是闭包,外部函数的临时变量被内部函数所调用的方法就叫闭包~通俗的讲:你想去一场婚礼场所蹭吃蹭喝,你想去这个婚礼,就得有一个婚礼,所以创建了一个所谓婚礼的外部函数,函数有一个默认的变量叫邀请函,你有了一个临时的变量邀请函了,你就要去婚礼内部现场找到自己的座位才能蹭吃蹭喝,所以在婚礼现场蹭吃蹭喝就是内部函数的返回值,而他得用外部函数的邀请函,公式:蹭吃蹭喝 = 邀请函 + 座位,return 蹭吃蹭喝,这就是闭包吧,可是又有一个人没有邀请函绕过了外部函数,直接找到了内部函数的婚礼现场,直接找到一个座位蹭吃喝,可是他没有邀请函,人家告诉他,您好由于您没有邀请函,拒绝你入座,鱼C老师如果您看到了我这个比喻就回复下,如果我比喻错了就把我这个删了,我也是刚学,我也怕理解的不好误人子弟,

trybst 发表于 2018-3-20 21:09:55

函数结尾用return moving ,如果用return moving(),会怎么样,这是为什么?
页: 2 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21
查看完整版本: 游戏中的角色移动:闭包(closure)在实际开发中的作用