为什么`sys.stderr`和`sys.stdout`在shell的最后放一个数字,但不在模块中 - python

U10*_*ard 2 python printing stdout stderr sys

基本上我的问题是标题,

例如在shell中:

>>> import sys
>>> sys.stdout.write('Hello')
Hello5
Run Code Online (Sandbox Code Playgroud)

(与stderr)相同

但是从一个文件:

import sys
sys.stdout.write('Hello')
Run Code Online (Sandbox Code Playgroud)

输出:

Hello
Run Code Online (Sandbox Code Playgroud)

(与stderr)相同

那为什么会这样呢???

use*_*ica 6

那是回报值.sys.stdout.write('Hello')返回5,以交互模式自动打印,但不在脚本中打印.