我有一个小程序,我想在其中弹出Python乌龟窗口,显示内容,在用户单击时关闭,然后弹出下一个窗口。一个示例程序是
import turtle
window = turtle.Screen()
t1 = turtle.Turtle()
t1.forward(100)
window.exitonclick()
window2 = turtle.Screen()
t2 = turtle.Turtle()
t2.forward(100)
window2.exitonclick()
尝试打开第二个窗口时,程序崩溃。这是Mac OS X计算机上的Python3.6。我已经看到了一些有关在两次重新运行程序时崩溃的参考,并且看到了在第一个窗口关闭后添加bye()调用的建议,但是我还没有解决这个问题。
有什么建议吗?
答案 0 :(得分:0)
似乎您应该使用与exitonclick
不同的功能退出屏幕或清除它。但是我可以通过运行turtle.bye()并在发生错误的情况下对其进行尝试/例外来使您的代码正常工作。
绝对不是一个很好的解决方案,而是一种解决方法,可以使第二个窗口正确显示。
import turtle
window = turtle.Screen()
t1 = turtle.Turtle()
t1.forward(100)
window.exitonclick()
try:
turtle.bye()
except Exception:
pass
window2 = turtle.Screen()
t2 = turtle.Turtle()
t2.forward(100)
window2.exitonclick()