python中的sys.stdout.write没有按预期工作

时间:2017-06-23 11:10:04

标签: python python-3.x sh

请考虑以下代码段

#!/usr/bin/python3

import sh
import sys

sys.stdout.write("hello")
sh.whoami(_out=sys.stdout.buffer)

我希望打印上面的程序

hello
username

但我得到了

username
hello

任何人都可以解释一下为什么会这样吗?我在linux mint 18.1上使用python 3.5.2

1 个答案:

答案 0 :(得分:0)

这是你的输出缓冲。如果你这样做了:

sys.stdout.write("hello")
sys.stdout.flush()
sh.whoami(_out=sys.stdout.buffer)

订单会如您所愿。