Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 循环提前结束?_Python_Loops_While Loop - Fatal编程技术网

Python 循环提前结束?

Python 循环提前结束?,python,loops,while-loop,Python,Loops,While Loop,相反,我得到了 1 1 1 2 1 3 1 3 2 1 2 2 2 3 2 4 3 1 3 2 3 3 3 4 我问了一个非常类似的关于for循环的问题,在我的打印中添加+1似乎有帮助,但对于while循环没有什么好处 谢谢您的启动\u内部没有重置回初始值。尝试使用中间变量迭代,或者更好地使用for循环 1 1 1 2 1 3 1 4 您需要在内部循环后再次重置“启动内部” for i in range(start_outer,end_outer+1): for j in range

相反,我得到了

1 1
1 2
1 3
1 3
2 1
2 2
2 3
2 4
3 1
3 2
3 3
3 4
我问了一个非常类似的关于for循环的问题,在我的打印中添加+1似乎有帮助,但对于while循环没有什么好处


谢谢

您的
启动\u内部
没有重置回初始值。尝试使用中间变量迭代,或者更好地使用
for
循环

1 1
1 2
1 3
1 4

您需要在内部循环后再次重置“启动内部”

for i in range(start_outer,end_outer+1):
    for j in range(start_inner,end_inner+1):
            print("{:>1} {:>1}".format(i,j))
start\u内部=1
内端=4
启动外部=1
外端=3
当启动外部或:


您不需要重置
启动内部
。它的值仅在第一次循环迭代中增加,直到
start\u inner>end\u inner
,然后在其余的外部循环中保持不变。只要用笔和纸把它通读一遍,你就会看到它。为什么不在类中使用
for in
循环呢?
start_inner = 1
end_inner = 4
start_outer = 1
end_outer = 3

while start_outer <= end_outer:
    iter_start_inner = start_inner
    while iter_start_inner <= end_inner:
            print("{:>1} {:>1}".format(start_outer,iter_start_inner))
            iter_start_inner += 1
    start_outer = start_outer +1
print("After the loop")
for i in range(start_outer,end_outer+1):
    for j in range(start_inner,end_inner+1):
            print("{:>1} {:>1}".format(i,j))
start_inner = 1
end_inner = 4
start_outer = 1
end_outer = 3    
while start_outer <= end_outer:
            while start_inner <= end_inner:
                    print("{:>1} {:>1}".format(start_outer,start_inner))
                    start_inner = start_inner +1
            start_inner = 1        
            start_outer = start_outer +1
    print("After the loop")
...
print('\n'.join("{:>1} {:>1}".format(i,j) for i in range(start_outer,end_outer+1) for j in range(start_inner,end_inner+1)))
print("After the loop")