【Python】while循环与嵌套

255 阅读3分钟

什么是循环?

生活中,比如:日出日出,日复一日,年复一年...等等;

程序中,将事物循环执行;

循环的分类:

Python中提供了 for 循环 和 while 循环

for 循环:重复执行语句

while循环:在给定的判断条件为True时执行循环体,否则退出循环体

循环控制语句:

break语句:在语句块执行过程中终止循环,并且跳出整个循环

continue语句:在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环

pass语句:空语句,保持程序结构的完整性,相当于占位符,不让程序报错(要写内容,但又不知道怎么写,却又不想程序报错)

while循环:

在某种情况下,循环执行某段程序,以处理需要重复处理的相同任务

只有当我们的循环执行完毕后,才会执行后面的代码。

计算1-100之间的偶数和  
1 先拿到1-100之间的数  
2 对拿到的数进行过滤 把奇数去掉  
3 对拿到的偶数进行累加求和  
"""  
i = 0         # 计数器  
num = 0  
while i < 100:  
    i += 1    # 每次固定的加一  
    if i % 2 == 0:  
        print(i)  
        num += i  
 print(num)
while 控制语句:
pass 语句:
i = 0 # 计数器  
while i < 100:  
    pass # 我这里是要写东西的 但是我目前不知道写什么 占位符 相当于一个标记  
    print('asdasdasdasd')  
    i += 1
break 语句:结束循环体,在 while 和 for 循环中使用,如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码
i = 1  
while i <= 100:  
    if i == 3:  
        print('完成今天的任务')  
        break # 终止循环  
    print(f'今天刷了{i}辆车')  
    i += 1
continue 语句:跳出本次循环
i = 1  
while i<=100:  
    if i == 3:  
        print(f"第{i}辆车是劳斯莱斯,跳过")  
        i += 1   # 4  
        continue  
    print(f"今天刷了{i}辆车")  
    i+=1
死循环:
while True:  
    print('正确')  
    break    # 强制退出循环
while循环嵌套:

一个循环嵌套中,最好不要出现 3或 3个以上while 或 if 语句(效率低,影响性能)

循环嵌套最多嵌套三次:

j = 1  
while j<=3:  
    i = 0  
    while i<10:  
        print("媳妇,我错了")  
        i+=1  
    print(f"做第{j}天的家务")  
    j += 1
while...else...

Python 中的循环可以和 else 配合使用; else 下方缩进的代码是指:当循环正常结束后要执行的代码;

语法规则:

image.png

while...else...之终止与退出循环
"""如果是break终止循环,else下方缩进的代码将不执行"""

i = 1
while i <= 5:
    if i == 3:
        print(f'这是第{i}次,不算数')
        break   # 终止循环
    print('重新来')
    i += 1
else:
    print('过关了')
"""总结:continue是退出当前的一次循环,继续下一次循环"""
"""当循环结束后,则执行else缩进的代码"""

i = 1
while i <= 5:
    if i == 3:
        i += 1
        continue   # 当i=3时,跳出本次循环
    print(f'给你{i}次机会,快说,你是猪')
    i += 1
else:
    print('嘿嘿,你才是小猪猪')