如何在python中捕获CTRL + C并在main函数中执行条件?

时间:2017-12-03 02:04:01

标签: python signals

我搜索了与此相关的答案,但没有遇到任何问题。我正在为P2P网络编写套接字程序,我需要将其纳入一些信号处理。

如果我在运行程序时按CTRL + C,程序应发送" LEAVE"请求另一个同行。

伪代码:

if conditionX
    dosomething(IP, port)
if conditionY
    dosomethingelse(IP, port)
if SIGINT detected
    sendleaverequest(peerip, port)

我如何在这里实现信号处理?

1 个答案:

答案 0 :(得分:1)

CTRL-C是操作系统的信号之一。您可以使用编程语言处理信号,包括信号库或模块。

对于Python,您可以使用系统模块,如果您处理signal.SIGINT,则可以在按CTRL-C时执行自己的代码。

以前问题的用法示例:

访问: How do I capture SIGINT in Python?