一、语法
while 条件语句:
循环体
二、说明
while --关键字,固定写法 条件语句 --一般是判断语句,实际上可以写任何有结果的数据表达式(看结果转换成布尔值) : --固定写法 循环体 --结构上和while保持一个缩进的一条或多条语句 逻辑上,循环体就是要重复执行的代码
三、循环原理
判断条件是否成立,成立,执行循环体;
执行完循环体后,继续判断条件是否成立,成立,又执行循环体;
直至条件不满足,跳出循环,执行后面代码
四、for与while的选择
- 遇到循环问题的时候能用for就用for,for解决不了的采用while
- for循环解决不了循环次数不确定的问题,这种时候就用while
循环次数不确定:循环次数由程序使用时用户的行为决定
固定模板:
while True:
需要重复执行的操作
if循环结束的条件:
break
举例:
#案例:提示用户输入密码123456直至输入正确
key = None
while key !='123456':
key = input('请输入正确密码')
print('密码正确')
五、循环关键字
一、continue与break
- 只能在循环体中使用
作用:结束循环
-
continue:
结束一次循环(执行循环体时如果遇到continue直接本次循环,进入下次循环)
-
break:
结束整个循环(执行循环体时候,遇到break整个循环结束,这次没有执行的部分不再执行,也不进入下次循环)
-
当while遇到break
while True: 需要重复执行的操作 if 循环结束条件: break
举例:
#练习:写一个数字游戏
'''
自动创建一个0-100的随机整数(70)
请输入一个整数(0-100):50
小了,再大点儿!
...
直到输入的数等于70
提示:恭喜你,猜对了
'''
from random import randint
num = randint(0,100)
while True:
a = int(input('请猜数(0-100)'))
if a<num:
print('小了,再大点儿!')
elif a>num:
print('大了,再小点儿!')
else:
print('恭喜你,猜对了')
break
二、else
-
对for与while复原:
#完整的for循环: for 变量 in 序列: 循环体 else: 代码块
#完整的while: while 条件语句: 循环体 else: 代码块
注意:
- else的存在不会影响循环的执行;
- else中的代码块会在上面的循环正常结束后执行,但如果是遇到break而结束的,else中的代码不会正常执行
举例:
#判断一个字符串是否是纯数字字符串
str = input('输入一个字符串')
for i in str:
if not'0'<i<'9':
print('不是纯数字字符串')
break
else:
print('是纯数字字符串')