Python 2.7.11 海龟图形崩溃
Python 2.7.11 Turtle Graphics Crashing
所以我在 Python 2.7.11 中使用海龟图形制作了这段代码:
import turtle
previousMovement = ""
wn = turtle.Screen()
wn.bgcolor("black")
player = turtle.Turtle()
player.color("white")
player.shape("triangle")
player.pencolor("red")
speed = 1
def left():
global previousMovement
if previousMovement == "left":
player.forward(speed)
previousMovement = "left"
else:
player.head(90)
player.forward(speed)
previousMovement = "left"
def right():
global previousMovement
if previousMovement == "right":
player.forward(speed)
previousMovement = "right"
else:
player.head(270)
player.forward(speed)
previousMovement = "right"
turtle.listen()
turtle.onkey(left, "a")
turtle.onkey(right, "d")
目前非常简单,但每当我尝试 运行 它时,Python 海龟图形 window 就会出现,然后一切都会暂停,然后它会说 Python 海龟图形 window =16=] 并关闭。我的代码中有什么东西导致了这个问题还是另一个问题?
你可以尝试进入海龟主循环:
# other code...
turtle.onkey(right, "d")
turtle.mainloop()
我还发现 turtle 需要 .setheading(270)
而不是 .head(270)
。您可能还需要更换另一个。
所以我在 Python 2.7.11 中使用海龟图形制作了这段代码:
import turtle
previousMovement = ""
wn = turtle.Screen()
wn.bgcolor("black")
player = turtle.Turtle()
player.color("white")
player.shape("triangle")
player.pencolor("red")
speed = 1
def left():
global previousMovement
if previousMovement == "left":
player.forward(speed)
previousMovement = "left"
else:
player.head(90)
player.forward(speed)
previousMovement = "left"
def right():
global previousMovement
if previousMovement == "right":
player.forward(speed)
previousMovement = "right"
else:
player.head(270)
player.forward(speed)
previousMovement = "right"
turtle.listen()
turtle.onkey(left, "a")
turtle.onkey(right, "d")
目前非常简单,但每当我尝试 运行 它时,Python 海龟图形 window 就会出现,然后一切都会暂停,然后它会说 Python 海龟图形 window =16=] 并关闭。我的代码中有什么东西导致了这个问题还是另一个问题?
你可以尝试进入海龟主循环:
# other code...
turtle.onkey(right, "d")
turtle.mainloop()
我还发现 turtle 需要 .setheading(270)
而不是 .head(270)
。您可能还需要更换另一个。