在python中绑定键盘事件



下面的代码有一个循环,它在10分钟后自动中断,我想手动中断这个循环,这意味着我想发送键盘事件(ctrl+shift+x)来中断。我该怎么做?感谢您抽出时间阅读本文。

def mouseerr():
    timeout = time.time() + 60*10
    while 1:
        ctypes.windll.user32.SetCursorPos(0,0)
        if time.time() > timeout:
            break

您可以使用pynput模块来监听键盘输入。

通过运行控制台命令pip install pynput安装模块。然后,您可以通过在脚本from pynput.keyboard import Listener, Key中写入来导入模块的正确部分。然后添加侦听器with Listener(on_press=keypress,on_release=keyrelease) as listener: listener.join(),并在这段代码之前定义两个函数keypress和keyrelease,其中一个输入参数将返回按下的键。该方法可以打破循环。请确保在额外的线程中运行此操作,以避免冻结代码的其余部分。作为替代方案,您可以使用pygame,但pynput更容易实现。

最新更新