Python:非此即彼
最奇怪的事情发生了。这是不言自明的;给你Python:非此即彼,python,if-statement,for-loop,break,turtle-graphics,Python,If Statement,For Loop,Break,Turtle Graphics,最奇怪的事情发生了。这是不言自明的;给你 for sublist in uses: print("for sublist in uses") print(uses) if (sublist[1] == 2): print("sublist[1] = 2") count = 1 break else: turtle.exitonclick() print("sublist[1] ≠
for sublist in uses:
print("for sublist in uses")
print(uses)
if (sublist[1] == 2):
print("sublist[1] = 2")
count = 1
break
else:
turtle.exitonclick()
print("sublist[1] ≠ 2?", uses)
break
print("*")
这就产生了:
for sublist in uses
[[(-100.00,-0.00), 1], [(0.00,0.00), 2], [(100.00,0.00), 1]]
然后它停止了。在我再次点击海龟图形窗口后
sublist[1] ≠ 2? [[(-100.00,-0.00), 1], [(0.00,0.00), 2], [(100.00,0.00), 1]]
*
exitonclick()
调用tkinter中的mainloop()
(类似于无限循环),它将保持turtle窗口打开,直到您单击画布中的任何位置。尝试将其切换到:
for sublist in uses:
print("for sublist in uses")
print(uses)
if (sublist[1] == 2):
print("sublist[1] = 2")
count = 1
break
else:
print("sublist[1] ≠ 2?", uses)
break
print("*")
turtle.exitonclick()
对于循环中的第一个子列表,
sublist[1]
是1
。此时,您将执行turtle.exitonclick
,等待单击;然后打印出预期的结果。由于使用显示的数据出现了中断
,您永远无法进入第二个子列表
,子列表[1]
为1;它看起来像是海龟。exitonclick()会暂停,直到单击为止。