猿问

萌新求教!python中while嵌套循环的执行流程问题?谢谢哈~

1.
whilex<3:
print("x的当前值为%d"%x)
y=0
whiley<3:
print("y的当前值为%d"%y)
print("内层循环")
y+=1
print("y的累加值为%d"%y)
print("外层循环")
x+=1
print("x的累加值为%d"%x)
执行结果如下:(嵌套的内循环计数器在外循环内部)
第1次完整循环
x当前值=0
y当前值=0
内层循环
y累加值=1
y当前值=1
内层循环
y累加值=2
y当前值=2
内层循环
y累加值=3
外层循环
x累加值=1
第2次完整循环
x当前值=1
y当前值=0
内层循环
y累加值=1
y当前值=1
内层循环
y累加值=2
y当前值=2
内层循环
y累加值=3
外层循环
x累加值=2
第3次完整循环
x当前值=2
y当前值=0
内层循环
y累加值=1
y当前值=1
内层循环
y累加值=2
y当前值=2
内层循环
y累加值=3
外层循环
x累加值=3
不再满足条件
2.
x=0
y=0
whilex<3:
print("x当前值=%d"%x)
whiley<3:
print("y当前值=%d"%y)
print("内层循环")
y+=1
print("y累加值=%d"%y)
print("外层循环")
x+=1
print("x累加值=%d"%x)
执行结果如下:(嵌套的内循环计数器在外面)
第1次完整循环
x当前值=0
y当前值=0
内层循环
y累加值=1
y当前值=1
内层循环
y累加值=2
y当前值=2
内层循环
y累加值=3
外层循环
x累加值=1
第2次完整循环
x当前值=1
外层循环
x累加值=2
第3次完整循环
x当前值=2
外层循环
x累加值=3
为什么会出现这种差异呢?看了视频,老师只告诉这种差异存在,自己也分析了执行流程,但那是从结果分析原因,总觉得对其中原理有点迷糊.
有什么更明确清晰的理解方法吗?像python代码从上到下,从左到右,LEGB原则?
三国纷争
浏览 289回答 2
2回答

小唯快跑啊

流程因为能直接分析出来的,重点在与y=0这句:例2中的y=0在外层while循环的外部,导致x的第一次循环内,whiley
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答