概述
缺少break的程序语句及输出——
for n in range(2,10):
for x in range(2,n):
if n%x ==0:
print(n,"equals",x,"*",n//x)
else:
print(n,"is a prime number")
输出为:
2 is a prime number
3 is a prime number
4 equals 2 * 2
4 is a prime number
5 is a prime number
6 equals 2 * 3
6 equals 3 * 2
6 is a prime number
7 is a prime number
8 equals 2 * 4
8 equals 4 * 2
8 is a prime number
9 equals 3 * 3
9 is a prime number
执行:
for n in range(2,10):
for x in range(2,n):
n=2,x in range(2,2)
注意:此时语句不会被执行
只有括号里的形成有数区间(a,b)_b>a才可以执行
所以,此时语句执行else,打印2 is a prime number;
接下来,n=3,x=2,if语句不满足条件,执行else语句,打印3 is a prime number;
接下来,n=4,x=2时,符合if条件语句,执行if语句,打印4 equals 2 * 2,
n=4,x=3时,不符合if语句,打印4 is a prime number;(有误)
因此,加上break,跳出循环的逻辑正确语句为:
for n in range(2,10):
for x in range(2,n):
if n%x ==0:
print(n,"equals",x,"*",n//x)
break
else:
print(n,"is a prime number")
输出为:
2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3
在n=4,x=2时,符合if条件语句,执行if语句,打印4 equals 2 * 2,同时,此时接break语句,跳出内循环,执行for n in range(2,10):语句
继续n=5,x=2;n=5,x=3;n=5,x=4;发现都不符合,执行else语句。
只有在内层循环没有被break打断的情况下,且循环列表遍历完成后,才会执行else语句。
最后
以上就是碧蓝电脑为你收集整理的循环else,break使用实例的全部内容,希望文章能够帮你解决循环else,break使用实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复