Python 程序设计讲义(25):循环结构——嵌套循环

Python 程序设计讲义(25):循环结构——嵌套循环

目录

  • Python 程序设计讲义(25):循环结构——嵌套循环
    • 一、嵌套循环的执行流程
    • 二、嵌套循环对应的几种情况
        • 1、内循环和外循环互不影响
        • 2、外循环迭代影响内循环的条件
        • 3、外循环迭代影响内循环的循环体

嵌套循环是指在一个循环体中嵌套另一个循环。while 循环中可以嵌入另一个 while 循环或 for 循环。反之,也可以在 for 循环中嵌入另一个 for 循环或 while 循环。

在嵌套循环中,最外层的循环称为外循环,嵌入的循环称为内循环。

一、嵌套循环的执行流程

嵌套循环的执行流程如下图所示:

Python 程序设计讲义(25):循环结构——嵌套循环_第1张图片

嵌套循环的执行流程分为以下几步:

步骤1:执行外循环,判断外循环的条件,如果为真,则执行外循环对应的语句块。如果条件不满足,则跳出所有循环。

步骤2:执行完外循环对应的语句块后,执行内循环。

步骤3:判断内循环的条件,如果为真,执行内循环对应的语句块。当内循环条件不满足时,结束内循环。继续执行外循环。

重复上述流程,直到外循环条件不满足时,跳出外循环,整个嵌套循环结束。

二、嵌套循环对应的几种情况

1、内循环和外循环互不影响

在一个循环体中嵌入另一个循环,但循环之间互不影响。

例如:

for i in range(1,10):
    for j in range(1,11):
        print("{}*{}={:2}  ".format(j,i,i*j),end="")
    print()
    
程序的运行结果为:
1*1= 1  2*1= 2  3*1= 3  4*1= 4  5*1= 5  6*1= 6  7*1= 7  8*1= 8  9*1= 9  10*1=10  
1*2= 2  2*2= 4  3*2= 6  4*2= 8  5*2=10  6*2=12  7*2=14  8*2=16  9*2=18  10*2=20  
1*3= 3  2*3= 6  3*3= 9  4*3=12  5*3=15  6*3=18  7*3=21  8*3=24  9*3=27  10*3=30  
1*4= 4  2*4= 8  3*4=12  4*4=16  5*4=20  6*4=24  7*4=28  8*4=32  9*4=36  10*4=40  
1*5= 5  2*5=10  3*5=15  4*5=20  5*5=25  6*5=30  7*5=35  8*5=40  9*5=45  10*5=50  
1*6= 6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  7*6=42  8*6=48  9*6=54  10*6=60  
1*7= 7  2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  8*7=56  9*7=63  10*7=70  
1*8= 8  2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  9*8=72  10*8=80  
1*9= 9  2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  10*9=90  
2、外循环迭代影响内循环的条件

由于外循环迭代的改变,会导致内循环的条件发生改变。

例如:

for i in range(1,10):
    for j in range(1,i+1):
        print("{}*{}={:2}  ".format(j,i,i*j),end="")
    print()    
    
程序的运行结果为:
1*1= 1  
1*2= 2  2*2= 4  
1*3= 3  2*3= 6  3*3= 9  
1*4= 4  2*4= 8  3*4=12  4*4=16  
1*5= 5  2*5=10  3*5=15  4*5=20  5*5=25  
1*6= 6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
1*7= 7  2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
1*8= 8  2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
1*9= 9  2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81  
3、外循环迭代影响内循环的循环体

正常情况下,执行内循环时,会循环执行循环体,直到循环条件不满足,正常退出内循环。由于外循环迭代的改变,会导致循环体不会被完全执行下去,而在满足某种条件的情况下退出了内循环的执行。

例如:

for i in range(1,11):
    f=1
    for j in range(1,i+1):
        if i%3==0:
            break
        f*=j
    if i%3!=0:
        print("{}!={}".format(i,f))
        
程序的运行结果为:
1!=1  
2!=2  
4!=24  
5!=120  
7!=5040  
8!=40320  
10!=3628800

你可能感兴趣的:(Python 程序设计讲义(25):循环结构——嵌套循环)