Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.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中将键盘快捷键绑定到异常_Python_Exception Handling_Keyboardinterrupt - Fatal编程技术网

在python中将键盘快捷键绑定到异常

在python中将键盘快捷键绑定到异常,python,exception-handling,keyboardinterrupt,Python,Exception Handling,Keyboardinterrupt,通过按Ctrl-c,可以向正在运行的python程序发送键盘中断。有没有办法将其他键盘组合绑定到自定义python异常 具体来说,我通常通过按ctrl+c来停止我的程序,然后它处理异常并干净地退出。但是,有时我想停止它,以便它在退出时执行不同的清理过程。我的程序通常运行几天而不停止,所以当我启动它时,我不知道我想用哪种方式来杀死它 简而言之,我希望根据运行时的一些用户输入执行不同的清理过程。我的程序计算量非常大,因此我更喜欢一种可以发送异常而不是轮询用户输入的解决方案。可能的重复是仅此Windo

通过按Ctrl-c,可以向正在运行的python程序发送
键盘中断。有没有办法将其他键盘组合绑定到自定义python异常

具体来说,我通常通过按ctrl+c来停止我的程序,然后它处理异常并干净地退出。但是,有时我想停止它,以便它在退出时执行不同的清理过程。我的程序通常运行几天而不停止,所以当我启动它时,我不知道我想用哪种方式来杀死它


简而言之,我希望根据运行时的一些用户输入执行不同的清理过程。我的程序计算量非常大,因此我更喜欢一种可以发送异常而不是轮询用户输入的解决方案。

可能的重复是仅此Windows、*nix还是跨平台?在*nix上,您可以使用信号处理程序-
^C
发送一个
SIGINT
,但如果您想发送另一个信号,您可以打开另一个终端窗口,或将程序置于后台,使用
kill
命令发送不同的信号。”另一种选择是在一个线程或子进程中运行整个程序,让主线程/进程等待输入,然后用它来决定做什么。Daniele,我的问题不同,我添加了一些编辑。abarnert,我使用的是unix,kill命令听起来好像可以做我想做的事情。但是,我很难找到如何以不同的方式处理Ctrl+C和
kill