python - Python evdev 找不到设备
问题描述
我正在使用 python 编写游戏,我需要使用evdev监视键盘事件。我是这个库的新手,所以我在线学习了教程。以下是教程中提到的脚本:
>>> import evdev
>>> devices = [evdev.InputDevice(path) for path in evdev.list_devices()]
>>> for device in devices:
>>> print(device.path, device.name, device.phys)
但是,运行代码后,list_devices() 的输出为None,这表明我的电脑(戴尔笔记本电脑)上没有输入设备。为什么?
解决方案
在我的 Buster 系统上检查了它debian
,我认为它对你来说应该是一样的——你需要特殊的访问权限来读取和写入设备。例如,sudo
应该工作,尝试:
bash>sudo python3
>>>import evdev; evdev.list_devices()
找到相关文档:
如果您没有看到任何设备,请确保您的用户位于正确的组(通常是输入)中以具有读/写访问权限。
因此,将您的用户添加到input
组中 - 可能比sudo
.
推荐阅读
- python - 如何使用 Poetry 安装 Tweepy?
- php - 如何使用 file_get_contents('php://input'); 处理多个值
- node.js - 无法将 axios 帖子发送到节点 js 服务器 - 本地主机上的 net::ERR_CONNECTION_REFUSED
- github - Git Bash 不允许我将现有存储库推送到 github
- python - 在python数据帧的时间范围内检查常见的交互器
- apache-camel - Apache Camel Karaf 强制标头被忽略
- python - Pycharm Python Selenium driver.switch_to.default_content() 和 request.clsdriver = 驱动语法
- javascript - React.JS如何只允许使用'onKeyPress'在输入中输入数字
- django - Django Prefetch 相关使用在模板中有效
- javascript - 刷新时所有待办事项都不会出现在前端,而所有输入的待办事项都存储在本地存储中