Python3 特定按键按下事件

Python3 Event On Specific Key Down

我想知道是否有一种方法可以检测按下 python 3 中的某个键,如下所示:

if keypressed('a'):
    print('you pressed a')

(为简单起见的例子)

看来 pynput library 可以帮到您。项目文档中的示例:

from pynput import keyboard

def on_press(key):
    try:
        print('alphanumeric key {0} pressed'.format(
            key.char))
    except AttributeError:
        print('special key {0} pressed'.format(
            key))

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

# Collect events until released
with keyboard.Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()

# ...or, in a non-blocking fashion:
listener = mouse.Listener(
    on_press=on_press,
    on_release=on_release)
listener.start()

您可以使用 pip3 install keyboard 安装 keyboard 模块,只需编写

if keyboard.is_pressed('a'):
   print('you pressed a')

keyboard模块可以给你比你想要的更多。
这里有几种检测按键的方法:

方法一:
它会不断检测您的按键。当您按 a 时,它将打印出来。按Ctrl+C跳出循环

import keyboard
while True:
    if keyboard.is_pressed("a"):
        print("You pressed 'a'")

方法二:
它将等待您按 a 并阻止整个代码,直到您按 a。它只会检测一次。

import keyboard
keyboard.wait('a')
print("You pressed 'a'")