《Python语言程序设计》 —2.5.4 break
2.5.4 break
break语句用于跳出for循环或while循环。对于多重循环情况,break语句跳出它所在的最近的那重循环。例如,对于代码清单2-24中所示的代码,其功能是求2~100之间的素数。
代码清单2-24 求2~100之间的素数
1 for n in range(2,101): #n在2~100之间取值
2 m=int(n**0.5) #m等于根号n取整
3 i=2
4 while i<=m:
5 if n%i==0: #如果n能够被i整除
6 break #跳出while循环
7 i+=1
8 if i>m: #如果i>m,则说明对于i从2~m上的取值,都不能整除n,所以n是素数
9 print(n,end=' ') #输出n
执行完毕后,输出结果为2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97。
提示 在代码清单2-24的第9行代码中,将print函数的end参数设置为“' '”(仅包含一个空格的字符串),表示将结束符由默认的回车改为了空格,使得多个素数能够输出到同一行。
在代码清单2-24中,有两重循环:第1行的for循环是外重循环,第4行的while循环是内重循环。break语句位于这两重循环中,但离break语句最近的那重循环是第4行的while循环。因此,当n%i==0成立时,通过第6行的break语句会跳出while循环(即结束当前n值的素数判断),而不会跳出for循环(即不会结束后面n值的素数判断)。
思考 请分别结合n=5和n=10这两种取值情况,分析一下代码清单2-24中第2~9行代码的执行过程。
- 点赞
- 收藏
- 关注作者
评论(0)