Python在运行时记录新热键

Python在运行时记录新热键,python,keyboard,hotkeys,Python,Keyboard,Hotkeys,我使用的是Windows,安装新的libs不是问题。 我使用Python键盘库来处理热键按下和与之连接的函数。 要绑定热键,我使用例如键盘。添加热键(“ctrl+shift+e”,打印,args=[“热键被按下!”]) 要注册该组合,我需要字符串“ctrl+shift+e”。我想在运行时记录一个新的组合,然后可以绑定到一个函数。我需要一个设置窗口,这样用户只需按示例组合即可配置单个设置 我想做什么(简化示例): 这段代码显然遗漏了整个录制部分keyboard.record不符合我的需要,因为它只

我使用的是Windows,安装新的libs不是问题。 我使用Python键盘库来处理热键按下和与之连接的函数。 要绑定热键,我使用例如
键盘。添加热键(“ctrl+shift+e”,打印,args=[“热键被按下!”])

要注册该组合,我需要字符串“ctrl+shift+e”。我想在运行时记录一个新的组合,然后可以绑定到一个函数。我需要一个设置窗口,这样用户只需按示例组合即可配置单个设置

我想做什么(简化示例):

这段代码显然遗漏了整个录制部分
keyboard.record
不符合我的需要,因为它只提供了可重放版本的录音,而不是组合的实际字符串(据我所知)。 键盘、msvcrt或任何其他用于键盘的库是否可以实现这一点?我很高兴能找到解决办法。我自己试着弄清楚,但找不到任何有关这方面的信息。
编辑:我不介意打开一个额外的窗口来录制按键。

好的,没关系。通过深入挖掘键盘库的源代码,找到了一个没有文档记录的解决方案<代码>键盘。获取热键\u name()正是我所需要的。所以这个问题就解决了

import keyboard, time

time.sleep(5)
key_combination = read_currently_pressed_combination()
keyboard.add_hotkey(key_combination, print, args=["Hotkey %s was pressed!" % key_combination ])
keyboard.wait()