while循环
语法:
while 条件语句:
循环体
说明:
while
- 关键字;固定写法- 条件语句 - 任何有结果的表达式
:
- 固定写法- 循环体 - 和while保持一个缩进的一条或多条语句;需要重复执行的代码
执行过程:
先判断条件语句是否为True,如果为True就执行循环体
执行完循环体再来判断条件语句是否为True,为True就再次执行循环体
…
直到判断条件语句的时候为False,整个循环就结束
num = 0
while num < 5:
print('======')
num += 1
print()
练习一:使用while循环打印数字序列:2 3 4 5 6 7 8
num = 2
while num < 9:
print(num, end='')
num += 1
print()
练习二:使用while循环打印一次数字序列:1 3 5 7 9
num = 1
while num < 11:
if num % 2 != 0:
print(num, end='')
num += 1
print()
foe循环和while循环的选择
- 如果循环次数确定一般推荐使用for循环,如果循环次数不确定就使用while循环
pw = '123456'
value = input('请输入密码:')
while value != pw:
value = input('请输入正确密码:')
print('密码正确')
练习:猜数字游戏
for random import randint
num = random.randint(0, 100)
while True:
value = int(input('请输入整数(0~100):'))
if value < num:
print('小了,再大一点')
elif value > num:
print('大了,再小一点')
else:
print('恭喜你,猜对了')
break
循环关键字
continue
- 结束一次循环
- continue只能出现在循环体中
- 当执行循环体的时候,如果遇到continue,那么当次循环结束,直接进入下次循环的判断
for x in range(3):
print('aaa')
print('bbb')
for x in range(3):
print('aaa')
continue
print('bbb')
for x in range(10):
if x % 2:
continue
print(x, end=' ')
break
- 结束整个循环
- break只能出现在循环体中
- 当执行循环体的时候遇到了break,那么整个循环直接结束
for x in range(2):
print('======')
print('++++++')
for x in range(2):
print('======')
break
print('++++++')
for x in range(10):
if x == 3:
break
print(x)
使用while循环的套路
while True:
需要重复执行的操作
if 循环结束的条件:
break
else
for循环:
for 变量 in 序列:
循环体
else:
代码段
while循环:
while 条件语句:
循环体
else:
代码段
- else的存在不会影响原循环的执行
- 如果循环不会因为遇到break而结束,那么else后面的代码就很执行,如果循环因为遇到break而结束,那么else后面的代码就不会执行
for x in range(3):
print('hello')
break
else:
print('else中的代码')
num = int(input('输入一个正整数:'))
for x in range(2, int(num**0.5)):
if num % x == 0:
print(num. '不是素数')
break
else:
print(num, '是素数')