Python 为什么不是';我的乌龟钥匙没反应吗?

Python 为什么不是';我的乌龟钥匙没反应吗?,python,module,turtle-graphics,key-bindings,Python,Module,Turtle Graphics,Key Bindings,我正在为我编写的游戏调整代码。当我调整player类时,我添加了所有额外的参数/参数,以便将其分离。我将键绑定保存在主游戏模块中 keybinding代码如下所示 turtle.listen() a=turtle.onkey(player.go_left(walls), "Left") b=turtle.onkey(player.go_right(walls), "Right") c=turtle.onkey(player.go_up(walls), &

我正在为我编写的游戏调整代码。当我调整player类时,我添加了所有额外的参数/参数,以便将其分离。我将键绑定保存在主游戏模块中

keybinding代码如下所示


turtle.listen()
a=turtle.onkey(player.go_left(walls), "Left")
b=turtle.onkey(player.go_right(walls), "Right")
c=turtle.onkey(player.go_up(walls), "Up")
d=turtle.onkey(player.go_down(walls), "Down")
e=turtle.onkey(player.headright(missile,lives), "d")
f=turtle.onkey(player.headleft(missile,lives), "a")
g=turtle.onkey(player.headdown(missile,lives),"s")
h=turtle.onkey(player.headup(missile,lives),"w")
i=turtle.onkey(player.headright(missile,lives),"D")
j=turtle.onkey(player.headleft(missile,lives), "A")
k=turtle.onkey(player.headdown(missile,lives),"S")
l=turtle.onkey(player.headup(missile,lives),"W")
o=turtle.onkey(player.drink(info),"space")
m=turtle.onkey(player.fireball(missile2,info,lives),"z")
n=turtle.onkey(player.fireball(missile2,info,lives),"Z")

游戏运行正常,但按键没有响应动作

您可以在中找到代码

密钥绑定代码在游戏中(mod版本)

所有函数都在“player.py”中


任何帮助都很好。

onkey函数只允许不带参数的函数,因此无法使用带参数的函数,因此它无法工作

但是。。。如果你使用

乌龟。安基((lambda:player.go_左(墙)),“左”)


它将起作用,因为您正在函数中创建一个函数,该函数将表示输出,就像它没有参数一样。

为什么要从变量中的
onkey
捕获返回值?总是没有?你为什么要在
海龟
上调用
onkey
listen
-通常,
onkey
是在
屏幕上调用的
?我在尝试一些东西,但即使你删除了变量,也没有任何区别。onkey和listen都是海龟方法。。您可以在这些方法中使用其他方法,但如果您使用的是turtle library,则应该可以使用。。当我在一个文件中编写游戏时,它可以工作,但由于调整代码,不得不添加额外的增强。如果你能提供一些关于它应该是什么的反馈,而不是turtle.onkey,我将不胜感激地阅读更多的内容,我认为我只能添加一个没有参数的函数来工作,因此为什么我的原始代码可以工作,而当我分离代码并添加扩展时,对于onkey函数,它不再起作用了。因为您没有提供
player.go_left(walls)
等的代码示例,所以我假设它返回了适当的类型(即没有参数的回调函数),但是的,这需要是一个函数。如果你的问题基本上是这样回答的,要么写一个好的答案并接受它,要么结束这个问题。