我想在我的Python腳本中加載約2GB的文本文件(大約35K文件)。在page.read()方法的三分之一左右出現內存錯誤。我'Python MemoryError加載文本文件
for f in files:
page = open(f)
pageContent = page.read().replace('\n', '')
page.close()
cFile_list.append(pageContent)
我從來沒有在Python中處理過這種大小的對象或進程。我檢查了一些其他Python MemoryError相關的線程,但我無法解決我的情況。希望有些東西可以幫助我。
你會想要讀取輸入的塊。看看這個問題的答案:http://stackoverflow.com/questions/519633/lazy-method-for-reading-big-file-in-python –
如果你使用的是64位機器,試試使用64位Python構建。 – geoffspear
我不明白你爲什麼要加載cFile_list中所有文件的所有內容。究竟想要如何處理文件的內容? 我想也許你想在將'\ n'替換爲''後將每個文件的內容保存到另一個相應的文件中。如果這是你想要做的,那麼你可以在for循環中將內容保存到它自己的新文件中,然後無論你做多少文件,都不會得到任何內存錯誤。 –