Python: 嵌套 While 循环不会循环多次
Python: Nested While loop doesn't loop multiple times
我的代码的功能是在整个 pdf 中粘贴坐标,至于我的主要项目,一些 pdf 没有正确粘贴文本,所以我正在编写代码来尝试调试问题。
我的代码中不起作用的部分是嵌套的 while 循环。它循环并开始下一个循环,第二个 while 按预期循环 72 次,但是它不会添加 50 并且永远不会再次循环。我查看了其他嵌套的 while 循环代码,但无法确定我的问题。
这是我的代码
while count <= 612: # width of pdf
while count2 <= 792: # height of pdf
can.drawString(count, count2, str(count) + " " + str(count2))
count2 += incremental_Value
count += 50
没有崩溃,can.drawString() 函数中更改“计数”会移动文本列。所以我知道问题是第一个 while 循环没有循环
正如@chepner 所建议的那样,内部循环不会第二次执行,因为 count2
保持在其最大值。要解决此问题,您只需要在使内部循环再次开始之前将其重置(因此在内部循环之前的外部循环中),例如:
while count <= 612: # width of pdf
count2 = 0 # fix
while count2 <= 792: # height of pdf
can.drawString(count, count2, str(count) + " " + str(count2))
count2 += incremental_Value
count += 50
我的代码的功能是在整个 pdf 中粘贴坐标,至于我的主要项目,一些 pdf 没有正确粘贴文本,所以我正在编写代码来尝试调试问题。
我的代码中不起作用的部分是嵌套的 while 循环。它循环并开始下一个循环,第二个 while 按预期循环 72 次,但是它不会添加 50 并且永远不会再次循环。我查看了其他嵌套的 while 循环代码,但无法确定我的问题。
这是我的代码
while count <= 612: # width of pdf
while count2 <= 792: # height of pdf
can.drawString(count, count2, str(count) + " " + str(count2))
count2 += incremental_Value
count += 50
没有崩溃,can.drawString() 函数中更改“计数”会移动文本列。所以我知道问题是第一个 while 循环没有循环
正如@chepner 所建议的那样,内部循环不会第二次执行,因为 count2
保持在其最大值。要解决此问题,您只需要在使内部循环再次开始之前将其重置(因此在内部循环之前的外部循环中),例如:
while count <= 612: # width of pdf
count2 = 0 # fix
while count2 <= 792: # height of pdf
can.drawString(count, count2, str(count) + " " + str(count2))
count2 += incremental_Value
count += 50