小编use*_*682的帖子

Pickle转储巨大的文件没有内存错误

我有一个程序,我基本上根据已知的事情调整某些事情发生的概率.我的数据文件已经保存为Dictionary.txt中的pickle Dictionary对象.问题是,每次运行程序时它都会拉入Dictionary.txt,将其转换为字典对象,进行编辑并覆盖Dictionary.txt.这是相当大的内存密集型,因为Dictionary.txt是123 MB.当我转储我得到MemoryError时,当我把它拉进来时一切都很好..

  • 是否有更好(更有效)的编辑方式?(也许不必每次都覆盖整个文件)

  • 有没有办法可以调用垃圾收集(通过gc模块)?(我已经通过gc.enable()自动启用了它)

  • 我知道除了readlines()之外你还可以逐行阅读.当我在程序中已经完全完成的Dictionary对象文件时,有没有办法逐行逐行编辑字典.

  • 还有其他方法吗?

感谢您的时间.

python memory file-io pickle

25
推荐指数
4
解决办法
4万
查看次数

标签 统计

file-io ×1

memory ×1

pickle ×1

python ×1