Linux系统中通过Python代码监听键盘键值

部署运行你感兴趣的模型镜像

依赖安装

pip3 install evdev

代码功能描述

InputDevice初始化时需要配置输入设备,一般在/dev/input目录下,可通过sudo cat /dev/input/*** 命令,然后按下按键,观察是否有输出确认是否是目标设备。

按下键盘按键后会在终端打印键值,通过Ctrl+C退出程序。

python代码

from evdev import InputDevice, categorize, ecodes

# 找到键盘设备,需要根据实际情况修改设备路径
device = InputDevice('/dev/input/by-id/usb-MosArt_USB_2.4G_Keyboard-event-kbd')
print(f'正在监听: {device.name}')

# 用于记录按键状态,识别组合键
ctrl_pressed = False
c_pressed = False

while True:
    event = device.read_one()
    if event:
        if event.type == ecodes.EV_KEY:
            key_event = categorize(event)
            if key_event.keystate == key_event.key_down:
                print(f'按下键: {key_event.keycode}')
                if key_event.keycode == 'KEY_LEFTCTRL' or key_event.keycode == 'KEY_RIGHTCTRL':
                    ctrl_pressed = True
                elif key_event.keycode == 'KEY_C':
                    c_pressed = True
            elif key_event.keystate == key_event.key_up:
                if key_event.keycode == 'KEY_LEFTCTRL' or key_event.keycode == 'KEY_RIGHTCTRL':
                    ctrl_pressed = False
                elif key_event.keycode == 'KEY_C':
                     c_pressed = False
            # 检查是否按下了 Ctrl + C 组合键
            if ctrl_pressed and c_pressed:
                print("检测到 Ctrl + C 组合键,停止监听")
                break

执行代码

python3 代码文件名

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值