为什么运行后无法打印sum的结果

 

修改为: 

i = 1
sum = 0
while i < 10:
	if i%2 == 0:
		continue
	else:
		sum = sum + i
	i = i + 1
print(sum)

 

i=i+1多了一个缩进吧

 

代码在if i%2==0:continue,这句在判断时因i值没有赋新值,i为1满足判断条件,就会一直跳转继续循环,不会执行else语句,所以在contine之前要加一句 i+=1。

i=1
sum=0
while i<=10:
    if i%2==0:
        i+=1
        continue
        
    else:
        sum += i
        i += 1
print(sum)

#输出结果 25

 

因为 一直在 while 循环   

continue 只是跳出当前循环 下一次循环 因为 i 在第一次循环中 加1 所以现在等余2  又一次跳出当前循环  i 还是等余2  所以会一直重复 

所以 你应该用 
break  跳出所在的当前整个循环,到外层代码继续执行。

具体 区别  https://zhidao.baidu.com/question/341048063.html

您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

大哥,sum是一个python已经定义好的函数,你单独用sum是不会产生任何东西。简单来说,你的变量名错了,不能用这个变量名,换成sum1吧