在这些嵌套的python for循环中,我怀疑内部循环是如何执行的,任何人都能在这里解决我的问题
for i in range(1, 4):
print(i)
for j in range(1, i):
print(j)
基本上,for
循环计算的是从1到上限减去1的数字。
您的代码将运行如下:
从i=1
开始,它将打印出1
,然后j
将从1
转到0
,也就是说,它将不占用任何值,并且不会打印j
。
接下来,i
将变成2
,然后j
将从1
变为2
,从而产生来自j
的输出1
。
这将继续下去,总体输出将是:
(i)1
(i)2
(j)1
(i)3
(j)1
(j)2
括号中的内容显示正在打印的变量。
例如,您的代码示例格式不正确。我假设代码就是这样的。
for i in range(1, 4):
print(i)
for j in range(1, i):
print(j)
这是一个非常简单的for循环示例,我将进行两次迭代,以使其变得清晰
让我们看看外for循环,它从1到3(4个独占(
i=1
现在,j将从1变为i,即1变为1。
内部循环现在如下所示:
..
for j in range(1, 1):
print(j)
由于范围(1,1(,1将是独占的,因此此循环将不会运行。所以迭代1结束:
1 # print(i)
====i=2
,现在,j将从1变为i,即1变为2。外循环将打印2,现在内循环将看起来像:
..
for j in range(1, 2):
print(j)
这将打印1,因为2是排除的限制
现在输出将是
2 # outer loop
1 # Inner loop.
在类似的回顾中,i=3
的最后一次迭代
将给出输出:
3 # outer loop print(i)
1 # inner loop print(j)
2 # inner loop print(j)
将这三者结合起来,最终输出将是
1 # outer
2 # outer
1 # inner
3 # outer
1 # inner
2 # inner