慕前端1544327
2021-08-02 09:05
num = 0 sum = 0 while num <= 1000: if num % 2 == 1: continue sum = sum + num num = num + 1 print(sum)
你下次可以在每次循环都打印一下num和sum,那有你就可以自己发现bug了。现在的代码,可以想一下,第一次循环,开始num=0,跑完后sum=0,num=1。第二次开始num=1,然后num&2==1成立,执行continue跳过这次循环开始第三次循环,但第三次num还是等于1,判断还是成立,这就导致后面变成了死循环了,因为后面num一直都是1,那就永远小于1000。解决方法很简单,使用continue前,num也要+1就成
continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)
continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)
continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)
Python3 入门教程(新版)
154156 学习 · 1075 问题
相似问题