为了账号安全,请及时绑定邮箱和手机立即绑定

使用 pynput 键盘记录器监听特定键?

使用 pynput 键盘记录器监听特定键?

繁星淼淼 2023-06-27 16:21:51
我想创建一个按键记录器,它会监听按键“w”“a”“s”“d”,每当检测到这些按键时,就会将它们添加到列表中。到目前为止我有这段代码from pynput.keyboard import *keys_pressed=[]def on_press(key):        print(key)def on_release(key):    if key==Key.esc:        return Falsewith Listener(on_press=on_press,on_release=on_release) as listener:    listener.join()如何检查特定键是否被按下,并将其添加到keys_pressed列表中?
查看完整描述

1 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

您可以使用KeyCode.from_char(char)从指定的字符获取密钥。所以KeyCode.from_char('w')会返回 的密钥w

然后,您可以将与 W、A、S 和 D 对应的键存储在列表或其他内容中,并在回调中检查按下的键是否等于其中之一。

这是一个例子:

from pynput.keyboard import *


keys = [KeyCode.from_char(c) for c in 'wasd']


def on_press(key):

    if key in keys:

        print(f'good key: {key}')

    else:

        print(f'bad key: {key}')


def on_release(key):

    if key==Key.esc:

        return False


with Listener(on_press=on_press,on_release=on_release) as listener:

    listener.join()


查看完整回答
反对 回复 2023-06-27
  • 1 回答
  • 0 关注
  • 173 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信