yuanbb0820 发表于 2024-4-19 21:55:17

for 循环嵌套的运行逻辑

for i in range(10):
        for j in range(10):


类似这种嵌套循环,如何更好的理解运行的顺序?

FishC 发表于 2024-4-19 21:55:31

嵌套循环的运行顺序是非常有趣的,我们可以通过一个例子来解释一下。

假设我们有以下代码:

for i in range(3):
    for j in range(2):
      print(i, j)

这个代码块将会输出什么呢?

首先,外层循环 `for i in range(3):` 会迭代3次,i 的值分别为 0、1、2。

然后,在每次外层循环的迭代中,内层循环 `for j in range(2):` 会迭代2次,j 的值分别为 0、1。

所以,在每次内层循环的迭代中,会输出一行结果,形如 (i, j)。

综合起来,最终的输出结果为:
(0, 0)
(0, 1)
(1, 0)
(1, 1)
(2, 0)
(2, 1)

可以看到,内层循环的每次迭代都会在外层循环的一次迭代中执行。也就是说,内层循环的所有迭代都会依次嵌套在外层循环的每个迭代中。这样就形成了一个循环的“交错”运行逻辑。

希望这个例子可以帮助你更好地理解嵌套循环的运行顺序!如果还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

jackz007 发表于 2024-4-19 22:42:59

本帖最后由 jackz007 于 2024-4-19 22:50 编辑

         外层走一步,内层走一圈
for i in range(4) :
    print('i =' , i)
    for j in range(5) :
      print(' ' * 8 + 'i =' , i , ', j =' , j)
         这个代码每一步执行都会打印信息,从打印输出可以清晰看出执行脉络。
    运行实况:
D:\\Python>python x.py
i = 0
      i = 0 , j = 0
      i = 0 , j = 1
      i = 0 , j = 2
      i = 0 , j = 3
      i = 0 , j = 4
i = 1
      i = 1 , j = 0
      i = 1 , j = 1
      i = 1 , j = 2
      i = 1 , j = 3
      i = 1 , j = 4
i = 2
      i = 2 , j = 0
      i = 2 , j = 1
      i = 2 , j = 2
      i = 2 , j = 3
      i = 2 , j = 4
i = 3
      i = 3 , j = 0
      i = 3 , j = 1
      i = 3 , j = 2
      i = 3 , j = 3
      i = 3 , j = 4

D:\\Python>

zhouz1986 发表于 2024-4-22 15:07:16

好神奇{:5_110:}

civilfem 发表于 2024-5-14 08:40:24

“外层走一步,内层走一圈”,总结得很妥当。
页: [1]
查看完整版本: for 循环嵌套的运行逻辑