Pong游戏中Paddle无法通过上下键移动的问题求助
Pong游戏Paddle无法移动的问题排查与修复
核心错误原因
在go_up和go_down函数中,你错误地将turtle对象的goto方法当作变量进行赋值操作,而非调用方法。这导致Paddle的位置根本没有被更新。
错误代码行:
paddle.goto = (paddle.xcor(), new_y)
正确写法(调用方法而非赋值):
paddle.goto(paddle.xcor(), new_y)
修正后的完整代码
from turtle import Screen, Turtle screen = Screen() screen.bgcolor("White") screen.setup(width=800, height=600) screen.title("Pong") paddle = Turtle() paddle.shape("square") paddle.shapesize(stretch_wid=5, stretch_len=1) paddle.penup() paddle.goto(x=380, y=0) def go_up(): new_y = paddle.ycor() + 20 paddle.goto(paddle.xcor(), new_y) def go_down(): new_y = paddle.ycor() - 20 paddle.goto(paddle.xcor(), new_y) screen.listen() screen.onkeypress(go_up, 'Up') screen.onkeypress(go_down, 'Down') screen.exitonclick()
额外优化提示
screen.onkeypress的按键参数无需加括号,直接传入'Up'/'Down'字符串即可,这是更规范的写法。
内容的提问来源于stack exchange,提问作者Sushant Ranjan
相关产品推荐
相关产品推荐

