我使用的是树莓派 3A+,并且已经尝试使用键盘几个小时了。我写了这段代码:
import keyboard
while True:
if keyboard.is_pressed("a"):
print("You pressed 'a'.")
break
每次运行它时,控制台都会显示这条很长的错误消息:
Traceback (most recent call last):
File "/home/yesnt/Documents/programming/NICK.py", line 3, in <module>
if keyboard.is_pressed("a"):
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/__init__.py", line 410, in is_pressed
_listener.start_if_necessary()
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/_generic.py", line 35, in start_if_necessary
self.init()
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/__init__.py", line 196, in init
_os_keyboard.init()
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/_nixkeyboard.py", line 113, in init
build_device()
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/_nixkeyboard.py", line 109, in build_device
ensure_root()
File "/home/yesnt/.local/lib/python3.9/site-packages/keyboard/_nixcommon.py", line 174, in ensure_root
raise ImportError('You must be root to use this library on linux.')
ImportError: You must be root to use this library on linux.
我今天才开始玩树莓派,所以很多东西还是不知道。谁能帮我解决这个问题吗?我还尝试将它用于打开和关闭 LED 的电路,但我认为它不会对此产生任何干扰。谢谢
我已经以各种方式安装了键盘,但什么也没有。安装键盘,pip 安装键盘,pip3 安装键盘,sudo pip3 安装键盘,....
您无权访问
/dev/input/input*
中的原始设备,这记录在您使用的软件包中:https://pypi.org/project/keyboard/
您可以以 root 身份运行程序(sudo myProgram.py)或检查此脚本想要访问的输入设备的权限。我检查了我的 Linux 机器,设备由
root
和组 input
所有,因此将组 input
添加到您的用户可能是一个解决方案。但你必须检查你的树莓派的权限。
只需使用 sudo 在终端上运行代码 就像 ---- sudo python3 filename.py