0

我正在使用 pynput 键盘模块来检测 python 应用程序中的击键。

目前我无法区分小键盘键和常规数字键,它们都返回为“1”、“2”、“3”等

那么我错过了什么?

代码 :

def on_press(key):
    print key

def on_release(key):
    return

with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
    listener.join()
4

1 回答 1

4

您可以使用对象的vk属性key来获取虚拟键码,对于从小键盘键输入的数字,其范围为 96 到 105:

from pynput import keyboard

def on_press(key):
    if hasattr(key, 'vk') and 96 <= key.vk <= 105:
        print('You entered a number from the numpad: ', key.char)

with keyboard.Listener(on_press = on_press) as listener:
     listener.join()
于 2019-10-21T00:02:02.647 回答