我正在使用Tensorflow制作一个AI来驾驶GTA圣安地列斯的汽车,我想知道使用python在每一帧中按下了哪些字符/键。我不能使用input()
因为我的程序不在前面。我做什么?
pyHook可能是你可能正在寻找的东西。所有键盘或鼠标事件都可以使用 Windows 挂钩捕获。pyhook
是围绕钩子 API 的 Python 包装器。
此答案提供了使用pyhook
捕获按键的示例代码。本文档提供了 Windows 中 Hook 的基础知识。
下面是一个示例,该示例挂钩键盘事件并将按下的键打印到控制台。它在按键时退出x
或X
.
#!python
import pythoncom, pyHook
import sys
def OnKeyboardEvent(event):
# block only the letter A, lower and uppercase
print chr(event.Ascii)
if event.Ascii in (ord('x'), ord('X')):
sys.exit()
# returning True to pass on event to other applications
return True
# create a hook manager
hm = pyHook.HookManager()
# watch for all mouse events
hm.KeyDown = OnKeyboardEvent
# set the hook
hm.HookKeyboard()
# wait forever
pythoncom.PumpMessages()