python中有两个主要的循环for与while,其中针对这两个循环有两种不同的中断用法break与continue。
首先先看下面的循环代码:
1:
1 for i in range(10):#变量i带入for循环,通过rang()函数进行0到10的循环 2 if i==7:#插入条件语句if..continue,当i==7时,进入条件进行判断 由于continue的作用退出当前循环,不执行下面的print(i)(这个是关键) 3 continue 4 print(i)#打印i
上面这个循环打印出来是0 1 2 3 4 5 6 8 9,关键是没有7,因为7在循环的时候遇到continue直接退出了当前循环。由于for循环自己增加变量值的特性,退出以后直接从8开始继续循环。
2:
1 for i in range(10): 2 if i==7: #代码与前一个基本相同唯一改变的就是条件语句的continue变成了break。 3 break 4 print(i) 由于continue变成了break所以循环到7的时候直接退出整个循环(for退出整个循环以后不会再自己增加变量值循环了)。所以打印出来的为0 1 2 3 4 5 6.
3:
1 x=0#输入一个变量x并且把它赋值为0。 2 while<10:#进入while<10的循环。 3 if x==7#进入条件语句判断变量是否为7,如果等于7 由于continue退出当前循环。 4 continue 5 print(x)#打印x 6 x=x+1#x+1以后再赋值给x 注意while循环和for循环有个一个本质上面的区别。for循环是知道长度并且可以自己增加变量值循环。但是while就无法做到自己增加变量值如果不用x+=1改变变量值就好进入一个死循环不停的打印0.当我们增加了if...continue这个条件以后当x变量增加到7的时候。退出当前循环,由于不执行下面的代码print(i)和x=x+1.所以x一直是7,当x为7再次进入while里面的时候又执行了continue。所以就产生了死循环。打印的结果为0 1 2 3 4 5 6.
4
1 x=0 2 while<0: 3 if x==7 4 x=x+1; 5 continue 6 print(x) 7 x+=1 此代码在上面的一个基础上增加了x=x+1到if语句里面。这样当条件判断以后x由7变成8再进行循环的时候就不会受if的条件影响可以继续循环。最后打印结果为0 1 2 3 4 5 6 8 9. break代替continue效果与for循环相同。直接跳出整个循环。打印结果为0 1 2 3 4 5 6.
时间: 2024-10-23 09:00:54