我如何使用海龟模块向上移动?

How can i use the turtle module to move up?

我正在使用 turtle 模块创建 space 入侵者游戏。我已经添加了代码,使我能够左右移动。我想把乌龟 Up/going 向前移动。有什么建议么?

# Create Player Turtle

player = turtle.Turtle()
player.color("green")
player.shape("triangle")
player.penup()
player.speed(0)
player.setposition(0, -250)
player.setheading(90)

playerSpeed = 30


# Move the player Left and Right

def move_left():
    x = player.xcor()
    x -= playerSpeed
    if x < -280: #less then
        x = - 280 #set it to
    player.setx(x)


def move_right():
    x = player.xcor()
    x += playerSpeed
    if x > 280: #greater than
        x = 280 #set it to
    player.setx(x)


def move_up():
    y = player.ycor()
    y -= playerSpeed

# Create keyboard bindings
turtle.listen()
turtle.onkey(move_left, "Left")
turtle.onkey(move_right, "Right")
turtle.onkey(move_up, "Up")



turtle.mainloop()

I want to move the turtle Up/going forward. Any suggestions?

我相信@jasonharper 的建议是最好的,"You need to actually set the turtle's new position, just like you did in the left/right functions."我们只需要复制水平运动的逻辑并将其应用到垂直:

from turtle import Screen, Turtle

playerSpeed = 30

# Move the player

def move_left():
    x = player.xcor() - playerSpeed

    if x < -280:
        x = - 280

    player.setx(x)

def move_right():
    x = player.xcor() + playerSpeed

    if x > 280:
        x = 280

    player.setx(x)

def move_up():
    y = player.ycor() + playerSpeed

    if y > 280:
        y = 280

    player.sety(y)

# Create Player Turtle

player = Turtle()
player.shape('triangle')
player.color('green')
player.speed('fastest')
player.setheading(90)
player.penup()
player.setposition(0, -250)

# Create keyboard bindings
screen = Screen()
screen.setup(600, 600)

screen.onkey(move_left, 'Left')
screen.onkey(move_right, 'Right')
screen.onkey(move_up, 'Up')
screen.listen()

screen.mainloop()

定义诸如屏幕大小之类的内容有助于直观地显示您的限制。