03 while循环
时间:2020-02-22 21:54:40
收藏:0
阅读:67
03 while循环
一、什么是循环?
- 循环就是重复做一件事
二、为何要有循环?
- 让计算机能够和人一样取重复做某些事情
三、如何用循环?
循环的基本语法
"""
语法展示:
while 条件: # 循环条件为False时,循环终止
子代码1
子代码2
子代码3
...
"""
# 循环条件count范围是0~2时满足循环条件,循环打印当前count值,count增量到3时不满足条件,退出循环
count = 0
while count < 3:
print(count)
count += 1
# 循环结束时,不影响顶行代码的执行
print('======end=====')
'''
执行结果:
0
1
2
======end=====
'''
死循环
- 循环永远不会终止,才称之为死循环
# 示范一
count = 0
while count < 5:
print(count)
# 示范二
while True:
print('ok')
# 注意:不要出现死循环
while True:
1 + 1
循环的应用
需求:输错密码,重新输入重新验证
- 方式一:
username = 'WangMao'
password = '123'
while True:
inp_username = input('请输入你的账户>>:')
inp_password = input('请输入你的密码>>:')
if username == inp_username and password == inp_password:
print('登录成功')
# 登录成功因该结束掉当前循环,break
break
else:
print('输入的账号或密码错误')
# 使用break循环,用户登录成功,这条语句不会执行
print('======end======')
- 方式二
username = 'WangMao'
password = '123'
tag = True
while tag:
inp_username = input('请输入你的账户>>:')
inp_password = input('请输入你的密码>>:')
if username == inp_username and password == inp_password:
print('登录成功')
# 登录成功因该结束掉当前循环
tag = False
else:
print('输入的账号或密码错误')
# 用户登录成功,修改循环条件,这条语句任然执行
print('======end======')
终止循环的2种方式
方式一: 修改循环条件
- 把循环条件改成假,必须等到当前循环子代码块执行结束,达到下一次循环条件的判断时间,循环才会结束
tag = True
while tag:
print('ok')
# 这时修改以后,当前循环条件是tag变量值为False
tag = False
print('当前循环子代码块执行结束了。。。')
方式二: break
- break,放到当前循环体中,一旦运行到break则立刻终止本层循环,不会进行下一次循环条件的判断,当前break同级别之下的代码将不会执行
- 注意:同级别的情况下,break后面代码永远运行不到,因此,break后面不因该写与其同级别的代码
while True:
print('ok')
# 运行到break则立刻终止本层循环
break
print('我上面有break,同级别之下的代码将不会执行')
嵌套多层循环
需求:想一次性终止所有循环
- 方式一:break终止(不推荐)
while 条件1:
while 条件2:
while 条件3:
# 我是结束捆绑条件3循环的break
break
# 我是结束捆绑条件2循环的break
break
# 我是结束捆绑条件1循环的break
break
- 方式二:修改循环条件(推荐)
tag = True
while tag:
while tag:
while tag:
# 当前修改以后,所有的循环条件tag等于False,将依次从里往外,结束循环
tag = False
嵌套循环小案例
需求一:输错账号密码,重新输入重新验证
需求二:输错3次,退出程序
需求三:输对账号密码,登录成功之后,可以循环接收用户输入的命令并执行
- 方式一:break
username = 'WangMao'
password = '123'
# 根据需求二得知:程序要记录输错的次数,那就得需要初始化变量来记录输错的初始值为0
count = 0
# 根据需求二得知:输错3次,退出程序,所以作为循环条件,用来控制循环退出。
while count < 3: # count=3
# if count == 3:break
inp_user = input('请输入你的用户名:')
inp_pwd = input('请输入你的密码:')
if inp_user == username and inp_pwd == password:
print('登录成功')
# 需求三: 输对账号密码,登录成功之后,可以循环接收用户输入的命令并执行
while True:
cmd = input('请输入你的命令(输入q退出): ')
if cmd == 'q':
# 使用break结束用户输入命令的这层循环
break
print('%s 正在执行' % cmd)
# 使用break结束用户想退出的这层循环
break
else:
print('输入的账号或密码错误')
# 更具需求二得知:程序虽然记录的错误的初始值,但是当每当错误依次时,要时时计算错误的次数
count += 1 # count=3
- 方式二:修改循环条件
username = 'WangMao'
password = '123'
count = 0
tag = True
while tag:
if count == 3: break
inp_user = input('请输入你的用户名:')
inp_pwd = input('请输入你的密码:')
if inp_user == username and inp_pwd == password:
print('登录成功')
while tag:
cmd = input('请输入你的命令(输入q退出): ')
if cmd == 'q':
# 修改循环变量,当前代码执行完毕,等到下一次循环判断时,退出程序
tag = False
else:
print('%s 正在执行' % cmd)
else:
print('输入的账号或密码错误')
count += 1 # count=3
continue用法
- 结束本次循环,直接进入下一次循环
- 注意:同级别的情况下,coutinue后面代码永远运行不到,因此,coutinue后面不因该写与其同级别的代码
count = 1
while count < 6: # 循环执行,范围1~5
if count == 4:
count += 1
# 注意:同级别的情况下,coutinue后面代码永远运行不到,因此,coutinue后面不因该写与其同级别的代码
continue
print('我永远运行不到。。。')
print(count) #
count += 1 # 6
while+else用法
- 注意2个点:1、循环正常结束。2、没有被break强制打断。else中的代码块才会执行(else和while相生相辅)
count = 1
while count < 6:
# if count == 3:break
if count == 4:
count += 1
continue
print(count)
count += 1
else:
print('我的while循环正常执行结束,没有break打断,我才执行哦')
四、总结
- 循环好处:解决重复代码问题,用循环(温馨提示:想都不要想)
- 死循环:循环永远不会终止,才称之为死循环(温馨提示:程序中不要出现死循环哦)
- 终止循环:修改循环条件:当前同一级别代码运行完毕以后,终止本层循环。2、break:遇到break立刻马上终止本层循环。
- 嵌套多层循环:多出循环的嵌套,推荐使用修改循环条件为False达到推出所有循环的目的
- countinue:遇到continue立刻马上结束本次循环,直接进入到下一次循环(同级别的情况下,continue后面代码永远运行不到,不因该把代码写道continue后面)
- while+else:只有while循环正常结束,且没有被break打断,else中的子代码块才执行
原文:https://www.cnblogs.com/yang1333/p/12347375.html
评论(0)