循环关键字:continue、break、else
1.continue和break
continue和break 都是循环体关键字(只能出现在循环体中)
-
1)continue - 结束一次循环(结束当前循环)
在执行循环体的时候如果遇到continue,那么这一次循环结果,直接进入下一次循环
-
break - 结束整个循环
在执行循环体的时候如果遇到break,整个循环结束(循环体后面的代码不执行,直接退出循环)
案例1
for x in range(5):
print('=' * 10)
continue
print('+' * 10)
print('-' * 10)
输出:
==========
==========
==========
==========
==========
案例2
for x in range(5):
if x % 2 == 0:
continue
print(x)
输出:
1、3
分析:
range(5) - 0,1,2,3,4
x = 0:if 0 % 2 == 0 -> if 0 == 0 ->if True: continue(一次循环结束,马上进入下一次循环)
x = 1:if 1 % 2 == 0 -> if 1 == 0 ->if False: print(x) -> 打印 1
x = 2:if 2 % 2 == 0 -> if 0 == 0 ->if True: continue(一次循环结束,马上进入下一次循环)
x = 3:if 3 % 2 == 0 -> if 1 == 0 ->if True: -> 打印 3
x = 4:if 4 % 2 == 0 -> if 0 == 0 ->if True: continue(一次循环结束,马上进入下一次循环)
整个循环结束
案例3
for x in range(5):
print('=' * 10)
break
print('+' * 10)
print('-' * 10)
输出:
==========
案例4
for x in range(5):
if x > 3:
break
print(x)
输出:
0
1
2
3
2.while使用套路
while True:
每次循环需要做的事情(需要重复执行的代码)
if 循环结束条件:
break
案例1(输入密码)
输入密码,如果正确则退出,如果猜错则继续猜
123456
pw = '123456'
while True:
value = input('请输入密码:')
if value == pw:
print('正确')
break
else:
print('输入错误,请重新输入')
案例2
猜数字
游戏开始让计算机产生一个0~100的随机数
用户不断输入猜数字,直到猜对或者次数用完为止,猜错会出现提示
from random import randint
i = 5
q = 1
num = randint(0, 5)
while i > 0:
num1 = int(input('你猜到的数据是:'))
if num1 == num:
print('你猜了' + str(q) + '次')
print('你猜对了')
break
elif num1 < num:
print('你猜了' + str(q) + '次')
print('你猜的小了')
i -= 1
q += 1
print('你还有' + str(i) + '次机会')
continue
else:
print('你猜了' + str(q) + '次')
print('你猜的大了')
i -= 1
q += 1
print('你还有' + str(i) + '次机会')
continue
if q > 3:
print('憨批,猜这么慢')
else:
print('还挺聪明')
补充:python产生随机整数的方法
randint(M,N) - 产生一个[M,N]的随机整数
3.else的用法
完整的for循环
for 变量 in 序列:
循环体
if xxx:
xxx
else:
代码段
完整的while循环
while 条件语句:
循环语句
else:
代码段
1)else的存在不影响原循环的执行
2)如果else对应的循环是自然死亡else后面的代码段会执行(就循环结束后执行);
如果else对应的循环是因为遇到break而结束的,else后面的代码在循环结束后不会执行。
代码示例:
for x in range(5):
print('=' * 5)
if x > 3:
break
print(x, '=' * 5)
else:
print('else!')
输出:
=====
0 =====
=====
1 =====
=====
2 =====
=====
3 =====
=====
False
for x in range(5):
print('=' * 5)
print(x, '=' * 5)
else:
print('else!')
输出:
=====
0 =====
=====
1 =====
=====
2 =====
=====
3 =====
=====
4 =====
else!