在python中,我正在读取一个大文件,我想将每一行(经过一些修改后)添加到一个空列表中.我想这只做前几行,所以我做了:
X = []
for line in range(3):
i = file.readline()
m = str(i)
X.append(m)
Run Code Online (Sandbox Code Playgroud)
但是,出现错误,并表示该行存在MemoryError
i = file.readline().
我该怎么办?即使我将范围设为1也是一样(虽然我不知道它对线的影响,因为它在循环内部).
我怎么没有得到错误代码?我正在迭代,我不能把它变成二进制文件,因为文件不只是整数 - 有小数和非数字字符.
txt文件是5演出.
有任何想法吗?
filehandle.readline()通过换行符 ( \n) 来换行 - 如果您的文件有巨大的行,或者根本没有新行,您需要找出一种不同的方式来对其进行分块。
通常,您可能会以块的形式读取文件并一一处理这些块。
您能弄清楚如何分解该文件吗?例如,您是否可以一次只读取 1024 个字节,并使用该块?
如果没有,清理文件的格式通常比设计复杂的阅读器更容易。