我在Python中遇到了一个关于嵌套循环的愚蠢问题。
我只是想弄清楚为什么第二个语句将遵循第一个语句循环5次?下面是我的循环代码,希望有人可以向我解释。提前致谢! :)
for steps1 in range(5):
print('@@@')
print('@@@')
for steps2 in range(4):
print('###')
print('###')
答案 0 :(得分:0)
此代码应按如下方式执行:对于外循环的每个循环,内循环执行4次。 (如果你挣扎,笔和纸张运行模拟可能会有所帮助)。这就是说你的输出应该看起来像那样:
@@@ //First outer cycle
@@@
### //First inner cycle
###
### //Second inner cycle
###
### //Third inner cycle
###
### //Fourth inner cycle
###
@@@ //Second outer cycle
@@@
...
这就是嵌套循环在大多数语言中的工作方式。由于Python不使用括号来确定函数范围,因此必须非常注意意图。如果您希望第二个for
语句只运行4次,则必须编写如下代码:
for steps1 in range(5):
print('@@@')
print('@@@')
for steps2 in range(4):
print('###')
print('###')
编辑:更多说明
答案 1 :(得分:-2)
for steps1 in range(5):
print('@@@')
print('@@@')
for steps2 in range(4):
print('###')
print('###')
第二个语句由于缩进而循环
试试这个