使用pynput的globalhotkeys时单个按键触发了组合键的函数
我写了一个python的快捷键脚本,使用到了pynput的globalhotkeys来添加多个组合键。当第一次使用组合键时可以触发指定的函数,但是之后仅仅只需要组合键中的一个键就可以触发这个函数。
from pynput import keyboard
import webbrowser
def openurl():
webbrowser.open('https://google.com')
def esc():
hotkey.stop()
with keyboard.GlobalHotKeys(
{'<ctrl>+0': openurl,
'<ctrl>+o': esc
}
)as hotkey:
hotkey.join()
比如:上面的代码实现了ctrl + 0的组合键打开谷歌的网站,如果刚运行,使用ctrl或者0是无法触发的,只有使用了组合键才可以启动。但是一旦启动了一次后,之后仅需要使用ctrl键就可以触发。
这个问题有时出现,有时又不出现,很奇怪。