Python 如何在 turtle window 中获取事件?

Python How to get event in turtle window?

我正在制作一个用键盘管理的乌龟界面。 我现在做了这个:

from turtle import *
forward(0)#To activate the window.
def tur(event):
    direct = 'right'
    pen = 'down'
    if event == '<Space>':
        if pen == 'down':
            penup()
            print('Pen up!')
            pen = 'up'
        if pen == 'up':
            pendown()
            print('Pen down!')
            pen = 'down'
    elif event == '<Right>':
        right(90)
        forward(10)
    elif event == '<Left>':
        left(90)
        forward(10)
    elif event == '<Up>':
        forward(100)
    elif event == '<Down>':
        backward(10)
if __name__ == '__main__':
    canvasVaribleName.bind(['<Space>', '<Right>', '<Left>', '<Up>', '<Down>'], 
                           tur)

但是 canvas 变量在 turtle 中是如何调用的呢?或者我应该以其他方式获取事件? 你能帮帮我吗?

使用海龟执行代码暗示的典型方法是:

from turtle import Turtle, Screen

screen = Screen()

def toggle_pen():
    if turtle.isdown():
        turtle.penup()
    else:
        turtle.pendown()

screen.onkey(toggle_pen, "space")

def right():
    turtle.right(90)
    turtle.forward(10)

screen.onkey(right, "Right")

def left():
    turtle.left(90)
    turtle.forward(10)

screen.onkey(left, "Left")

def forward():
    turtle.forward(100)

screen.onkey(forward, "Up")

def backward():
    turtle.backward(10)

screen.onkey(backward, "Down")

turtle = Turtle()

screen.listen()
screen.mainloop()

您可以阅读在线 Python 乌龟教程之一,尤其是关于如何处理事件的部分。