我正在寻找一种在Python中创建跨平台键盘快捷键的方法。这样当我按下 Ctrl + C 或 Ctrl + Alt + F ,程序将运行某个功能。
是否存在此类方法或库?
答案 0 :(得分:0)
我不知道是否可以发送Ctrl和/或alt的组合。我尝试了几次,但我认为它不起作用。 (如果有人有任何其他信息,请纠正我)。你能做的就是这样:
from msvcrt import getch
while True:
key = ord(getch())
if key == 27: #ESC
PrintSomething()
def PrintSomething():
print('Printing something')
每次按ESC时都会运行一个scrpit,尽管只有在命令提示符下运行时才会运行。
答案 1 :(得分:0)
您可以通过pynput
库为按键事件创建一个侦听器。
这是一个简单的代码,可以在按CTRL+ALT+H
键时运行功能:
from pynput import keyboard
def on_activate():
print('Global hotkey activated!')
def for_canonical(f):
return lambda k: f(l.canonical(k))
hotkey = keyboard.HotKey(
keyboard.HotKey.parse('<ctrl>+<alt>+h'),
on_activate)
with keyboard.Listener(
on_press=for_canonical(hotkey.press),
on_release=for_canonical(hotkey.release)) as l:
l.join()