0
某些程序在命令行上自行执行时会挂起,以致它们应该从标准输入接收输入(即sed "s/test/text/g"
)。 Python脚本如何确定它是否从标准输入传递数据,因此可以引发适当的错误以避免挂起此类输入?如何确定是否将标准输入传递给Python脚本?
某些程序在命令行上自行执行时会挂起,以致它们应该从标准输入接收输入(即sed "s/test/text/g"
)。 Python脚本如何确定它是否从标准输入传递数据,因此可以引发适当的错误以避免挂起此类输入?如何确定是否将标准输入传递给Python脚本?
如何:
import sys
if sys.__stdin__.isatty():
print('Interactive')
else
print('Non-Interactive')
将会产生以下的输出:
C:\>python bobo.py
Interactive
C:\>echo "test" | python bobo.py
Non-Interactive