慕哥9229398
让我担心的是,您能够bob.update()成功调用,因为update()这不是随 Python 3 或 Python 2 发布的标准turtle.py 中的方法。Turtle您可能正在使用较旧的或非标准的turtle 实现,因此某些下面可能需要调整。让我们使用一个turtle事件,而不是引入time.sleep()与turtle自己的事件处理程序不同步的:ontimer()from turtle import Screen, Turtledef vshape(): turtle.right(25) turtle.forward(50) turtle.backward(50) turtle.left(50) turtle.forward(50) turtle.backward(50) turtle.right(25)def snowflakeArm(): for _ in range(4): turtle.forward(30) vshape() turtle.backward(120)def snowflake(angle, position): turtle.setheading(angle) turtle.penup() turtle.setposition(position) turtle.pendown() for _ in range(360 // 60): snowflakeArm() turtle.right(60)angle = 0def snowflakes(): global angle turtle.clear() snowflake(angle, (0, 0)) snowflake(angle, (350, 0)) snowflake(angle, (-350, 0)) snowflake(angle, (0, 350)) snowflake(angle, (0, -350)) screen.update() angle = (angle + 10) % 360 screen.ontimer(snowflakes, 25) # repeat 25 milliseconds from nowscreen = Screen()screen.tracer(False)turtle = Turtle()turtle.hideturtle()turtle.pencolor('blue')turtle.pensize(5)snowflakes()screen.exitonclick()这还应该允许我们通过单击窗口来干净地退出程序,而不会生成所有这些警告消息。