我正在使用Tensorflow制作一个在GTA San Andreas驾驶汽车的人工智能,我想知道在使用python的每一帧中按下了哪些字符/键。我不能使用input(),因为我的程序不在前面。我做了什么?
发布于 2017-07-25 00:08:57
pyHook可能是您正在寻找的东西。所有键盘或鼠标事件都可以使用Windows挂钩捕获。pyhook是一个围绕hooks API的Python包装器。
This answer提供了一个使用pyhook捕获按键的示例代码。This document提供了Windows的基础知识。
下面是一个示例,它挂钩键盘事件并将按下的键打印到控制台。对于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()https://stackoverflow.com/questions/45285207
复制相似问题