如何构造嵌套的for循环?

时间:2021-01-23 20:01:47

标签: python

我是 Python 新手。我一直在研究 for 循环,但我似乎无法理解 NESTED for 循环。我正在做一个需要嵌套 for 循环知识的问题,但我不知道该怎么做!

问题:

<块引用>

编写一个产生以下输出的 for 循环:

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
0
2
4
6
8
10
12
14
16
18
0
3
6
9
12
15
18
0
4
8
12
16

警告:您最多只能使用两个 for 循环

我的代码:

c = 0
for i in range(1, 5):
    for j in range(10):
        print(i * c)
        c = c + 1

任何帮助将不胜感激。我就是无法理解嵌套的 for 循环。如果有人能指导我就好了。

2 个答案:

答案 0 :(得分:3)

可以这样做:

for step in range(1, 5):
    for i in range(0, 20, step):
        print(i)

使用列表理解:

print(*[i for step in range(1, 5) for i in range(0, 20, step)], sep="\n")

答案 1 :(得分:0)

您不需要 c 变量,您可以乘以 j

内循环不应该每次都上升到 10。请注意,随着乘法器的增加,迭代次数减少——每次都在 20 之前停止。所以你需要用20除以i才能得到迭代次数。

for i in range(1, 5):
    for j in range(20//i):
        print(i * j)