请问这个是哪里有问题呢?谢谢!

来源:4-7 Python之continue继续循环

慕前端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)


写回答 关注

4回答

  • minzeOK
    2021-08-02 15:49:19
    已采纳

    你下次可以在每次循环都打印一下num和sum,那有你就可以自己发现bug了。现在的代码,可以想一下,第一次循环,开始num=0,跑完后sum=0,num=1。第二次开始num=1,然后num&2==1成立,执行continue跳过这次循环开始第三次循环,但第三次num还是等于1,判断还是成立,这就导致后面变成了死循环了,因为后面num一直都是1,那就永远小于1000。解决方法很简单,使用continue前,num也要+1就成

    慕前端154...

    明白了,谢谢!

    2021-08-02 16:02:58

    共 1 条回复 >

  • 幕布斯5282111
    2021-08-02 15:14:32

    continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)

    慕前端154...

    明白了,谢谢你!

    2021-08-02 16:03:14

    共 1 条回复 >

  • 幕布斯5282111
    2021-08-02 15:14:16

    continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)

  • 幕布斯5282111
    2021-08-02 15:13:50

    continue 前要让num加一,否则你的num一直都是0,一直在执行if 和continue。(continue执行了是会跳过之后的语句不执行直接开始新的循环的)

Python3 入门教程(新版)

python3入门教程,让你快速入门并能编写简单的Python程序

154156 学习 · 1075 问题

查看课程

相似问题