屏幕未使用海龟库中的 .update() 进行更新

Screen not updating with .update() from turtle library

我是 python 的新手,我正在尝试使用 turtle 库创建一个乒乓球游戏。代码的相关部分如下:

import turtle

#(and some code for generating the paddle)

#Function
def paddle_a_up():
    y=paddle_a.ycor() #take y cord
    y+=20 
    paddle_a.sety(y) #change y cord of paddle_a
    print(y) #tried to print the y cord

#Keyboard Binding
wind.listen() #listen the keyboard input
wind.onkey(paddle_a_up(), "w")

#Main Game Loop
while True:
    wind.update() #keep update while game run

然而,当我按下 'w' 时,桨没有移动,即使我将此键绑定到 paddle_a_up 功能。我将 y 坐标设置为 0 并尝试在绑定函数内打印 y 坐标,但是当我 运行 程序时, y 获得了值 20,即使我没有按任何键。希望有人能帮忙?

谢谢

我不熟悉turtle但是这行代码有问题:

wind.onkey(paddle_a_up(), "w")

我很确定这里的目的是将此函数绑定到 w 字符的按下。但是,您调用了该函数,并将其结果绑定到按键。这会导致两件事:

  • y 的值甚至在游戏开始之前就达到了 20。
  • w 键并未真正绑定到 paddle_a_up

将上面一行替换为:

wind.onkey(paddle_a_up, "w")

(函数名后无括号)

如果您的其余代码正确,那么这将解决问题。