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

while True:
    print('ok')
    # 运行到break则立刻终止本层循环
    break
    
    print('我上面有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次,退出程序

需求三:输对账号密码,登录成功之后,可以循环接收用户输入的命令并执行

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用法

count = 1

while count < 6:  # 循环执行,范围1~5
    if count == 4:  
        count += 1  
        # 注意:同级别的情况下,coutinue后面代码永远运行不到,因此,coutinue后面不因该写与其同级别的代码
        continue  
        print('我永远运行不到。。。')

    print(count)  #
    count += 1  # 6 

while+else用法

count = 1
while count < 6:
    # if count == 3:break
    if count == 4:
        count += 1
        continue
    print(count)
    count += 1
else:
    print('我的while循环正常执行结束,没有break打断,我才执行哦')

四、总结

原文:https://www.cnblogs.com/yang1333/p/12347375.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!