java - 如何在python中处理等待输入信号?
问题描述
我有一个有一些输入的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
推荐阅读
- python - 提取 Instagram 评论时,NoneType 对象不可下标
- javascript - 为什么我的按钮功能只提供一次输出?
- jmeter - jmeter中的Beanshell预处理器出现错误
- node.js - 如何将我的本地 node.js 应用程序连接到我的 Heroku Postgres 数据库?
- firebase - 如何在颤动中从 Firestore 中检索每个文档的文档 ID
- python - pyparsing - 用千位分隔符解析数字
- python - 可选参数中的 Argparse 位置参数
- flutter - Flutter/Dart:Widget 中的文本会根据哪个 Screen 调用而改变?
- html - 在 iPhone 上呈现 CSS 电子邮件签名问题
- javascript - kubernates Pod中的JS堆栈跟踪错误