00:00
哦,Z教程。好,我们回家上节课内容啊,上节课讲了什么呢?是这个bug的来源,怎么来的呢?就是Grace hoopper发现了,哎,这个进虫了是吧?有Bug了,下次呢,那个哪儿进重了是吧?找这个bug,但是我们程序里没有bug,怎么才能有呢?VI空格grid.py去编辑的时候啊,点一下边点一下copy呗,在这边呢,双引号加号,注意这个位置,双引号加号p past g g到第一行DD删除,删除之后呢,我们可以看到这个最后一行,这个监控号M,其实无所谓啊,百分号S。这个斜杠杠R,然后把这个这这个东西就可以。批量删除掉,它不影响,最终呢,你你不管这个它也不会影响,问题在哪儿呢?在第二行,第二行这应该是什么print,实际呢是那就导致保存并运行的时候一定会怎么样出现问题,运行一下结果第一行出来了,对吧,第一行出来了啊,然后这个第二行呢,Line to的时候呢,出现了东西了什么综艺呢,PRO这句话出现问题了,哪个问题PRO is not define.
01:17
哎,这就是相应的问题,那么这个东西我们只能看到这么一个问题,我们能不能到这个现场去具体具体去感受一下呢?那我们Q出来运用PDB3去运行这GR瑞ID豆点P吧,进来之后呢,我们也不用喊救命了,大概知道流程next的下一条啊,然后第一行执行了是吧,第一行执行了,第一行执行了之后该执行,第二行还没执行,这个时候我在next。它就出现什么name name PRO not, 现在我的位置在哪呢?我的位置就在第二行,而且执行了,而且报错了,对吧?而且报错了,那么什么是print呀,Print就是一个内建的函数build function, 什么是print呀?哎,Print就是name print is not def没定义的这个东西,所以呢,我们在现场就在第二行这个执行的位置,观察到了这个print和这个PRO,那怎么办?那我就得改呗,哪行错,第二行错,在编辑这个gradeidgradeidle.py的时候去把这个。
02:25
O啊,按一下R。就是替换,把它替换成I,这样就直接完成了,这个这样一执行肯定是没问题的,但是这个执行啊,还是有点儿慢,怎么才能让它快点儿呢?我们PDB3去运行这gradeid.py的时候,Help喊喊有没有什么能够快一点儿的,什么东西快呢?哎,这块有一个东西叫做什么呀,叫做until until什么意思呀,那么我们不知道,我们help一下这个until。啊,如果没参数的话,那么就执行当前行。
03:02
那么如果有参数的话,就执行到一个行号,执行到一个行号,那么我们until可以。当next斯的用是吧,看啊当next的用,当然你这还不如next呢是吧,那我那我那我怎么办?那我现在在第几行,我要直接到第6行行不行,我该执行第4行讲到第6行按。Q 6行不行,你看按Q6的时候,第4行执行了,第5行执行了,然后就该执行第6行了,哎,然后再next呢,就到这个位置,哎,然后再next next回来了,那我直接按until 8行不行呢,按until没有第8行,但是呢,它就刷一下,直接就怎么样执行到头了,哎,这就是什么快速的执行,按until想去哪儿去哪儿,那么呃,这个快速执行它还得有个行号,能不能就一下一把就直接到底呢?我们再搜一下这个东西叫什么呢?还要不搜一下这个东西啊,叫continue continue, 你还玩不玩儿,继续继续打,那continue什么意思呀?Continue不用指定行号,Continue execution only stop when a break point is encounter, 直接往下走,直到遇到一个。
04:27
Break point断开的点直接,那我continue行吗?Continue行吗?哎,那我现在因为我在最后一行,所以绕圈儿了,刚才这个绕圈儿摁上continue是不是直接6行啊,诶这有什么好处呢?比如说我咱们2万行代码刷的一下,2万行过去了是吧,这就很爽是吧,直接就过去了,那么他问题也就在这儿,直接就太冲了是吧,他就直接直接到到底了,他能不能给他在这个过程中在哪儿给他断一下呢?哎,那么就是截断这个流程的点叫什么呢?Break point能不能有呢?我们退出,然后编辑这个ID逗点PY在哪儿呢?在第4行上边。
05:12
摁大O切入到插入模式,来一个什么呀,来一个break point括弧,这就是什么,这就是一个断点,断点,哎,Break断point点,然后我们再去调试,这个时候continue的时候怎么样?哎,先执行3行,为什么执行3行。唰的一下到三,三行应该是直接冲到底啊,但是呢,他这儿有一个break point, 他就停住了,Break point停住再怎么样,再continueing又到头了,又到头要绕圈怎么办?Continue是吧,Continue, 每一次continue就怎么样,就三行,就三行,为什么是三行呢?因为三行中间的这个位置有一个break break point, 这样呢,我们就可以把这个程序分成一段儿一段儿一段儿的来调试了,是吧,就是你你看是不是这一段出问题,还是那段出的问题,把2万行分成前1万和后1万,哎,这样呢就就就能够分段处理问题了,但是还有一个问题就是这break point呢,它始终是写死的,我能不能在调试的过程中动态的设置这个断点break point呢?咱们下次再说。
06:25
哦,EZ教程。
我来说两句