如何处理pickle.dump 出现MemoryError

问题:

我使用pickle写入大量数据到imdb中,出现MemoryError

问题原因:

pickle无法写入超过4.0GB以上的数据,overstackflow上写了一些解决办法:如分批存储python-3-can-pickle-handle-byte-objects-larger-than-4gb
这些使用都比较麻烦,我在网上查到了joblib,这个支持存大文件pypi-joblib

如:使用dump 和 load

import numpy as np
import joblib
data = [('a', [1, 2, 3]), ('b', np.arange(10))]

filename = "test.db"
with open(filename, 'wb') as fo:  
    joblib.dump(data, fo)
with open(filename, 'rb') as fo:  
    mydata = joblib.load(fo)
    print mydata

你可能感兴趣的:(python)