Python 如何在程序管道传输时将文本输出到终端
我有一个程序,它将特定的文本导入到另一个程序中,该程序是由userinput创建的。用户需要显示在终端中的反馈 程序的名称应如下所示:Python 如何在程序管道传输时将文本输出到终端,python,pipe,Python,Pipe,我有一个程序,它将特定的文本导入到另一个程序中,该程序是由userinput创建的。用户需要显示在终端中的反馈 程序的名称应如下所示: $ python inputData.py | ./otherProgram 但是,我使用了sys.stderr作为解决方法,但这会在特定条件下导致输出不一致(换行,但不返回行开始)(我认为这是由于python脚本等待输入,而另一个脚本打印某些内容造成的) 是否有更好的方法在程序通过管道传输时向用户输出反馈,并且只有当另一个程序等待输入时,输出才不会混合。您别
$ python inputData.py | ./otherProgram
但是,我使用了sys.stderr
作为解决方法,但这会在特定条件下导致输出不一致(换行,但不返回行开始)(我认为这是由于python脚本等待输入,而另一个脚本打印某些内容造成的)
是否有更好的方法在程序通过管道传输时向用户输出反馈,并且只有当另一个程序等待输入时,输出才不会混合。您别无选择,只有
stderr
,因为stdout
关闭以进行重定向。但是如果使用得当,stderr
工作得很好。Unix命令使用它在重定向时显示消息/错误。为什么不使用/dev/tty
?