我写了一个非常简单的代码,但是我不能理解一件事。 代码看起来像这样
name = open("test.txt")
def CountLines(name):
return len(name.readlines())
def CountChars(name):
return len(name.read())
print(CountLines(name))
print(CountChars(name))
现在让我们说测试.txt“包含4行文本(第1行、第2行、第3行、第4行)。运行此代码后,我将得到以下输出:
^{pr2}$第一个可以,但是为什么第二个是0?因为之前的函数设置为EOF?如果是这样,为什么它不从一开始就读取文件?有没有办法重新加载文件?在
是的,第二个是
0
,因为你已经读了整个文件,所以CountChars
中没有什么可以读的了。在在调用
CountChars
之前,您需要将name.seek(0)
放在那里以返回文件的开头。查看file object documentation。在相关问题 更多 >
编程相关推荐