print()
使用
sys.stdout.write()
显示文本。
此外
suproccess
只看到系统发送的文本,它不知道您以前向系统发送文本的方式。
只能在代码重定向中
打印()
到
sys.stderr
import sys
sys.stdout.write("Hello")
print("PRINT", file=sys.stderr)
当你在控制台中运行时,你仍然会看到所有的文本,但是你只会得到
sys.stdout
当你使用
subprocess
你也只能得到
stdout
如果在控制台中使用
python script.py > stdout.txt
或者重定向到其他程序
python script.py | sort
而不是
print(... ,file=sys.stderr)
你也可以使用
sys.stderr.write("PRINT\n")
但你得加上
"\n"
最后手动。