相关疑难解决方法(0)

570
推荐指数
5
解决办法
24万
查看次数

为什么写入控制台中的stdout会附加在Python 3中写入的字符数?

sys.stdout.write()当我注意到这会产生一些奇怪的输出时,我只是在Python控制台中玩.

对于每次write()调用,分别写入传递给函数的字符数将附加到控制台的输出中.

>>> sys.stdout.write('foo bar') 例如,foo bar7打印出来的结果 .

即使传递空字符串也会产生输出0.

这实际上只发生在Python控制台中,但在执行具有相同语句的文件时却不会发生.更有趣的是,它只适用于Python 3,但不适用于Python 2.

虽然这对我来说不是一个问题,因为它只发生在控制台中,但我真的很想知道为什么它会像这样.

我的Python版本在Ubuntu 15.10下是3.5.1.

python stdout sys python-3.x

7
推荐指数
1
解决办法
1186
查看次数