proc = subprocess.Popen(cmd, shell = True, stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE)
ready = select.select([proc.stdout, proc.stderr], [], [])[0]
for stream in ready:
if stream == proc.stdout:
# do something
elif stream == proc.stderr:
# do something else
else:
# error
如果我把stdout和stderr都传给选择。选择(),是否有方法在遍历返回的列表时检查并查看正在查看的流?你知道吗
我试着在每个if分支中打印出
stream
,结果如下:虽然它说它是一个} -在您的例子中,后者是正确的:
io.BufferedReader
,但它似乎继承了name
属性,从^{name
属性对于相应的流是唯一的,所以我想您可以:希望对你有帮助。你知道吗
相关问题 更多 >
编程相关推荐