一、break的用法
- break 语句用来终止循环语句,即循环条件没有 False 条件或者序列还没被完全递归完,也会停止执行循环语句。
- break 语句用在 while 和 for 循环中。
- 如果您使用嵌套循环,break 语句将停止执行最深层的循环,并开始执行下一行代码。
实例:在循环中,break
语句可以提前退出循环。例如,本来要循环打印1~100的数字:
n = 1
while n <= 100:
print(n,end=' ')
n = n + 1
print('END')
结果如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 END
如果要提前结束循环,可以用break
语句:
n = 1
while n <= 100:
if n > 10: # 当n = 11时,条件满足,执行break语句
break # break语句会结束当前循环
print(n,end=' ')
n = n + 1
print('END')
结果如下:
1 2 3 4 5 6 7 8 9 10 END
执行上面的代码可以看到,打印出1~10后,紧接着打印 END
,程序结束。可见 break
的作用是提前结束循环。
二、continue的用法
- continue 语句跳出本次循环,而 break 跳出整个循环。
- continue 语句用来告诉 Python 跳过当前循环的剩余语句,然后继续进行下一轮循环。
- continue 语句用在 while 和 for 循环中。
实例:在循环过程中,也可以通过 continue
语句,跳过当前的这次循环,直接开始下一次循环。
n = 0
while n < 10:
n = n + 1
print(n,end=' ')
结果如下:
1 2 3 4 5 6 7 8 9 10
上面的程序可以打印出1~10。但是,如果我们想只打印奇数,可以用 continue
语句跳过某些循环:
n = 0
while n < 10:
n = n + 1
if n % 2 == 0: # 如果n是偶数,执行continue语句
continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行
print(n,end=' ')
结果如下:
1 3 5 7 9
执行上面的代码可以看到,打印的不再是1~10,而是1,3,5,7,9。可见 continue
的作用是提前结束本轮循环,并直接开始下一轮循环。
三、else的用法
在 Python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
for num in range(10,20): # 迭代 10 到 20 之间的数字
for i in range(2,num): # 根据因子迭代
if num%i == 0: # 确定第一个因子
j=num/i # 计算第二个因子
print('%d 等于 %d * %d' % (num,i,j))
break # 跳出当前循环
else: # 循环的 else 部分
print(num, '是一个质数')
结果如下:
10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数
在 Python 中,while … else 在循环条件为 False 时执行 else 语句块:
count = 0
while count < 5:
print(count, " is less than 5")
count = count + 1
else:
print(count, " is not less than 5")
结果如下:
0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5
小结:
- 循环是让计算机做重复任务的有效的方法。
break
语句可以在循环过程中直接退出循环,而continue
语句可以提前结束本轮循环,并直接开始下一轮循环。这两个语句通常都必须配合if
语句使用。- 要特别注意,不要滥用
break
和continue
语句。break
和continue
会造成代码执行逻辑分叉过多,容易出错。 - 有些时候,如果代码写得有问题,会让程序陷入“死循环”,也就是永远循环下去。这时可以用
Ctrl+C
退出程序,或者强制结束 Python 进程。