有没有办法在没有像 pygame
这样庞大臃肿的模块的情况下在 python 中做关键监听器?
一个例子是,当我按下 a 键时,它会打印到控制台
The a key was pressed!
它还应该监听箭头键/空格键/shift键。
最佳答案
我正在寻找一个没有窗口焦点的简单解决方案。 Jayk 的回答,pynput
,非常适合我。这是我如何使用它的示例。
from pynput import keyboard
def on_press(key):
if key == keyboard.Key.esc:
return False # stop listener
try:
k = key.char # single-char keys
except:
k = key.name # other keys
if k in ['1', '2', 'left', 'right']: # keys of interest
# self.keys.append(k) # store it in global-like variable
print('Key pressed: ' + k)
return False # stop listener; remove this if want more keys
listener = keyboard.Listener(on_press=on_press)
listener.start() # start to listen on a separate thread
listener.join() # remove if main thread is polling self.keys
关于python - python中的关键监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11918999/