Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用具有特定键盘布局的Evdev将Keycode解析为Scancode_Python_Linux_Keyboard_Evdev - Fatal编程技术网

Python 使用具有特定键盘布局的Evdev将Keycode解析为Scancode

Python 使用具有特定键盘布局的Evdev将Keycode解析为Scancode,python,linux,keyboard,evdev,Python,Linux,Keyboard,Evdev,我正在使用以下代码打印当前插入式键盘的键码和扫描码: import evdev device = evdev.InputDevice('/dev/input/event8') for event in device.read_loop(): if event.type == evdev.ecodes.EV_KEY: print((evdev.categorize(event).keycode)) print((evdev.categorize(event).scanco

我正在使用以下代码打印当前插入式键盘的键码和扫描码:

import evdev

device = evdev.InputDevice('/dev/input/event8') 

for event in device.read_loop():
  if event.type == evdev.ecodes.EV_KEY:
    print((evdev.categorize(event).keycode))
    print((evdev.categorize(event).scancode))
目前我有一个德国键盘布局,因为我想要的不是我们。当我按下“#”时,我得到以下输出:
键\u反斜杠
43
显然,这是错误的。在美国键盘上,这是正确的

因此,我的问题是:如何在不调用shell的情况下获得正确的按键代码/扫描代码