文件最后一行的空格总是被识别为EOF?

时间:2018-01-29 17:44:15

标签: python text eof

我知道这可能是之前提出的问题,我搜索了一些答案,例如this one

但我仍然很困惑,我想再问一次明确的答案。

我的问题是:是一个只有空格字符的空行,例如换行符(/ n),当作为文件的最后一行放置时,总是被Python视为EOF?那么其他语言如PHP,Javascript等呢?任何OS平台差异?

例如,在我的python3代码中,我有一个要处理的文件:

some text at line 10
some more text at line 11
nothing (last line of file)

我的代码将最后一行识别为EOF,并引发StopIteration异常。如果我没有最后一个空行,代码可以正常工作(我正在使用open() as f: for line in f,所以它确实有EOF但是在内部捕获)。我使用的文本编辑器是VisualStudio和记事本,两者都试过了。

对于同一文本文件,如果我将其连接到自身,则新文件之间没有换行符。这就是我认为最后一个空行被视为EOF并被忽略的原因。

谢谢。

0 个答案:

没有答案