带有大文件的Python 2.5 MemoryError

时间:2015-10-15 14:50:39

标签: python

由于MemoryError,我无法读取大文件。其他答案表明这应该有效,可能是什么问题? 整个代码就是这个

#Separador de RAMAS.csv por rama
import csv
archivo_original = open('RAMAS.csv')
print archivo_original.readline()

我得到的错误就是这个

Traceback (most recent call last):
  File "Separador_CSV.py", line 4, in <module>
    print archivo_original.readline()
MemoryError

2 个答案:

答案 0 :(得分:1)

  

我在Windows 7中工作,文件是在其他Python脚本中创建的,没有任何问题,使用lineterminator ='\ r'

file.readline似乎与\r分开。如果您使用其他Python脚本创建该文件,最好使用\n而不是\r再次创建该文件,那么它应该可以正常工作。

\r的示例:

In [14]: open("test", "w").write("foo\rbar\rblub")
In [15]: open("test", "r").readline()
Out[15]: 'foo\rbar\rblub'

\n的示例:

In [16]: open("test", "w").write("foo\nbar\nblub")
In [17]: open("test", "r").readline()
Out[17]: 'foo\n'

如果不可能,您可以使用file.read(size_in_bytes)只读取文件的一部分并自行重新创建行。

答案 1 :(得分:0)

我发现Python将文件解释为一个大行 感谢您的评论,让我找到了问题。