python基础04-流程控制-循环结构-while循环

今日学习

流程控制之循环结构

while + break

while + continue

while + else

死循环 与全局标志位

流程控制之循环结构

在python中只有for 和while两种循环

while 的循环逻辑

while 条件:
​ 条件成立之后循环执行的子代码
​ 1.先判断while后面的条件是否成立 如果成立则执行子代码
​ 2.子代码运行完毕之后 再次回到while后面的条件判断处 判断条件是否成立
​ 3.如果成立则继续运行子代码 完毕后再次判断while后面的条件是否成立
​ 4.依次往复 直到条件不成立才会结束
总结
while 每执行完一次条件成立后的代码,会再次判断是否成立,不成立,便还会退出循环

例:
#用户登录
while True:
    name = input('name:')
    passwd = input('密码:')
    if name == 'jason' and passwd == '123':
        print('login成功')
    else:
        ('用户名错误或者密码错误')

-----------------------------------------------------------------------------
#计数器限制循环登录次数
#练习 登录失败3次退出      
count = 1
while count < 4:
    count += 1
    name = input('请输入你的名称:')
    pw  =  input('请输入密码:')
    if name == '123' and pw == '123':
        print('login 成功')
    else:
        print('login失败')

while+break

while +break 就是在循环体中,添加关键字break强制结束循环
#强制循环结束
count = 1
while True:
    count += 1
    if  count <= 10:
        print(count)
        break
while True:
    name = input('name>>>:')
    pwd = input('pwd>>>:')
    if name == 'jason' and pwd == '123':
        print('登录成功')
        # 强制结束
        break  # 直接结束break所在的循环体 (结束本层循环)
    else:
        print('用户名或密码错误')

while + continue

根据条件跳过一次,然后继续执行下一步。
-------------------------------练习1----------------------------------------
#打印1~10.
count = 0
while count < 10:
    count +=1
    if count == 7:
        count += 1
        continue        #跳过本次循环
    print(count)
-------------------------------练习2---------------------------------------
#打印 1~10,遇到7跳过
 count = 0
while count < 10:
    count +=1
    if count == 7:
        continue      #当count = 7时,跳过本次循环,继续向下执行。
    print(count)
while True:
    print('外部循环')

    while True:
        print('内部循环')
        continue
 	continue
总结:
    跳过一次循环,然后继续进行内部循环

while+else

else判断循环体是否正常结束,才会执行else下的代码,如果循环体中出现break中断,那么不执行eles子代码
#打印1~5排除
count = 0
while count < 5:
    count += 1
    print(count)
else:
    print('循环结束')
-----------执行结果---------
1
2
3
4
5
循环结束

死循环与全局标志位

不允许出现的循环:死循环

1.计算死循环
count = 10
while True:
    count *= 10  # 计算死循环 不允许出现 有问题
while True:
    print('这是一个循环体')   

全局标志位

当想停止嵌套型循环体时,也可以用全局标志位进行停止
#例
flag = True
while flag:
    print(123)
    while flag:
        print(321)
        while flag:
            print(222)
            flag = False
posted @ 2022-07-04 18:45  名字长的像一只老山羊  阅读(82)  评论(0编辑  收藏  举报