使用键盘时出现意外行为。读取_键()

2024-06-02 07:05:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个程序,在这个程序中,我按下某个热键,它会检测到一次按键,并告诉我按下了哪个键,但每当我按下热键时,程序都不会对任何按键做出响应,即使是退出键也会继续运行

import keyboard


def dostuff():
    print("Mew")
    key = keyboard.read_key()
    print('I have detected', type(key))


keyboard.add_hotkey('a', lambda: dostuff())
keyboard.wait('esc')

谁能说出问题出在哪里


Tags: keyimport程序readdefhavetype按键
1条回答
网友
1楼 · 发布于 2024-06-02 07:05:54

如果你不想使用键盘模块,你可以使用pynput,它做同样的事情

使用pip安装pynput

pip install pynput

以下是代码:-

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 when esc key is pressed
        return False

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

相关问题 更多 >