【发布时间】:2022-02-03 06:13:54
【问题描述】:
这是我的例子:
我的文件:
abefgh
2345
6^7&8*
31
1
1
我的代码:
handle = open('TestFile','r')
for line in handle:
print(handle.readline())
输出:
2345
31
1
为什么它只打印交替行?
谢谢大家。现在我明白了,每次我运行 readline() 命令。光标移动到行尾。所以下次它会从下一行开始读取。 请投票,以便我可以再次发布问题。我不能再发问题了。提前谢谢!
【问题讨论】:
-
您要打印的行是
line。handle.readline()读取 另一个 行。 -
等等,我以为 readline() 函数会从行/文件的开头读取,对吧?所以如果第一行是“abefgh”(在这种情况下这也被认为是一个文件),我认为它会从头开始读取?
-
readline()从文件句柄中读取,从当前位置开始(即在一行之后,即在下一行的开头)直到并包括下一行结尾(或文件的结尾)。