我写了一个非常基本的python代码,该代码创建一个文件并在其中添加10行
>>> b = open("b.txt",'w')
>>> for i in range(10):
... b.write("line %d\n" %i)
...
7
7
7
7
7
7
7
7
7
7
为什么在屏幕上输出7?
我写了一个非常基本的python代码,该代码创建一个文件并在其中添加10行
>>> b = open("b.txt",'w')
>>> for i in range(10):
... b.write("line %d\n" %i)
...
7
7
7
7
7
7
7
7
7
7
为什么在屏幕上输出7?
输出到控制台的'7'是写入文件的字节数,由file.write函数返回。请参阅文档here。
此外,通常应使用以下格式来处理文件:
with open("b.txt","w") as f:
for i in range(10):
f.write("line %d\n" %i)
这避免了在完成文件后必须手动关闭文件。
,这来自交互式解释器的行为。如果您写
,也会发现类似的效果>>> x = 5
>>> x
5
当您有一条语句且未将其设置为等于任何值时,交互式解释器将repr
输出/返回值并将其显示在终端中。文件写入命令的返回值是写入文件的字节数。