Python 3.x读取文本文件而不忽略末尾的空行

时间:2015-03-16 20:58:40

标签: python-3.x file-io

我试图阅读看起来像这样的文本文件:

Line 1

Line 3

使用以下代码:

with open('textfile.txt', 'r') as f_in:
    for line in f_in:
        print("~ " + line)
f_in.closed

但是循环只运行3次而不是4次,忽略空行。

我得到的输出是:

~ Line 1
~ 
~ Line 3

我该如何解决?

1 个答案:

答案 0 :(得分:1)

当使用文件作为迭代器时,行的末尾由SetWindowPos(this.Handle, IntPtr.Zero, clientTopLeft.X, clientTopLeft.Y, clientWidth, clientHeight, SWP.SHOWWINDOW); SetWindowPos(clientHandle, this.Handle, 0, 0, 0, 0, SWP.NOMOVE | SWP.NOSIZE); 标记。这意味着即使你的编辑可能会显示一个空行"在\n之后,如果那里没有数据,那里就没有线。

例如,试试这个:

3

通过将字符with open('textfile.txt', 'wb') as f_out: f_out.write(b'1\n\n3\n4') with open('textfile.txt', 'r') as f_in: for line in f_in: print("~ " + line) 放在最后一行,即使没有终止换行符,Python也会识别另一行。没有4,你只有三行。