📜  python pynput 字母键被按下 - Python (1)

📅  最后修改于: 2023-12-03 15:18:59.316000             🧑  作者: Mango

Python 通过 pynput 监测键盘按键

在 Python 中,我们可以通过使用第三方库 pynput 来监测键盘按键。

安装

通过 pip 命令安装 pynput:

pip install pynput
使用方法

以下是一个简单的例子,演示如何使用 pynput 监测键盘按键:

from pynput import keyboard

def on_press(key):
    try:
        print('字母键被按下:{0}'.format(key.char))
    except AttributeError:
        print('特殊键被按下:{0}'.format(key))

def on_release(key):
    print('{0} 被释放'.format(key))
    if key == keyboard.Key.esc:
        # Stop listener
        return False

# 创建一个键盘监听器
with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
    # 开始监听键盘事件
    listener.join()

在上面的代码中,我们创建了一个 keyboard.Listener 对象,然后注册 on_presson_release 两个回调函数。

on_press 函数会在按下任何一个键时被调用,它会输出被按下的键,如果是字母键,输出它的字符值;如果是特殊键(如 Shift、Ctrl、Alt 等),输出它的名称。

on_release 函数会在释放任何一个键时被调用,它会输出被释放的键。

最后,我们通过调用 listener.join() 来让程序一直监听键盘事件,直到 Esc 键被按下。

注意事项

在使用 pynput 监测键盘按键时,需要注意以下几点:

  • 必须以管理员身份启动 Python 解释器或者运行程序,否则可能会出现权限不足的错误;
  • 如果程序中有其他阻塞操作(如调用 sleep 函数),会导致键盘监听失效。