当前位置: 代码迷 >> python >> 如何在python中处理等待输入信号?
  详细解决方案

如何在python中处理等待输入信号?

热度:63   发布时间:2023-07-14 08:45:50.0

我有一个python代码,有一些输入:

a = input("first input:")
b = input("second input:")

我从java运行它:

Process process = new ProcessBuilder("python3", scriptPath).start();

但是从python运行也适合我。

是否有可能在等待输入并以某种方式处理它时从python进程中捕获信号? 例如,在第一个输入我想写一些文本到process.getOutputStream()和第二个输入我想杀死进程。

我发现终端输入有SIGTTIN信号。 我试图在python中做到这一点:

def interrupted(signum, frame):
    exit()

signal.signal(signal.SIGTTIN, interrupted)
a = input()

但它没有成功。

我找不到我问的问题的解决方案。 但我通过自己替换input函数来解决最初的问题。

__builtins__.input = myfunc