【发布时间】:2012-02-09 02:00:19
【问题描述】:
test.txt 是一个“\n”分割文本文件:
f = open('test.txt','r') f.read(256)
但是在读取 256 时,最后的记录可能不是全行。
如何阅读如:
我设置为 256 但是当 248 是 "\n" 和 256 条最后的记录没有完整的行 只需读取 248,f.tell() 给出 248 的位置。
谢谢。
【问题讨论】:
-
流应该如何知道它尚未读取的数据中是否有换行符?如果你的文件被分成几行,而且这些行很重要,你为什么要以固定大小的块来阅读它?
-
您可能来自另一种语言,您在低级别访问文件并需要解决此类问题(可能是 C?)。在 Python 中,按行拆分文件是正常的,并且有很多好的方法可以做到这一点(下面的答案中的示例)。除非您正在滚动自己的二进制格式,否则您可能不需要使用 read()