这是一个循环,我无法找到答案为什么它循环2次输入1.
我希望有人可以帮助我:)。
循环现在有效。谢谢。
以下是代码:
gridX = 0
gridY = 0
while gridX <= 4 and gridY < 4:
if gridX == 4:
gridY += 1
gridX = 0
print("Y "+str(gridY))
else:
gridX += 1
print("X "+str(gridX))
它应输出:
X 1
X 2
X 3
X 4
Y 1
X 1
X 2
X 3
X 4
Y 2
X 1
X 2
X 3
X 4
Y 3
X 1
X 2
X 3
X 4
Y 4
欢迎以更好的方式获得这一结果。
答案 0 :(得分:1)
更好的方法可能是循环加倍。
for gridY in range(0,4):
print gridY
for gridX in range(0,4):
print gridX
答案 1 :(得分:0)
虽然Izaaz为您提供了更好的方法,但您可以扩展输出以更好地了解您的代码在做什么。像这样单步执行代码可以帮助您准确理解代码正在做什么,您可以将其与您期望的代码进行比较。
gridX = 0
gridY = 0
while gridX <= 4 and gridY < 4:
if gridX == 4:
gridY += 1
gridX = 0
print("IF- X "+str(gridX)+" Y "+str(gridY))
else:
gridX += 1
print("ELSE- X "+str(gridX)+" Y "+str(gridY))
哪个给你 -
ELSE- X 1 Y 0
ELSE- X 2 Y 0
ELSE- X 3 Y 0
ELSE- X 4 Y 0
IF- X 0 Y 1
ELSE- X 1 Y 1
ELSE- X 2 Y 1
ELSE- X 3 Y 1
ELSE- X 4 Y 1
IF- X 0 Y 2
ELSE- X 1 Y 2
ELSE- X 2 Y 2
ELSE- X 3 Y 2
ELSE- X 4 Y 2
IF- X 0 Y 3
ELSE- X 1 Y 3
ELSE- X 2 Y 3
ELSE- X 3 Y 3
ELSE- X 4 Y 3
IF- X 0 Y 4
在此之后,您可以看到你正在获得其他区块四次,然后一个区块,然后是另外四个区块....