我有许多大型(〜100 Mb)文件,我经常处理这些文件。虽然我试图在处理过程中删除不需要的数据结构,但内存消耗有点过高。我想知道是否有办法有效地处理大数据,例如:大型数据结构操作/处理中的内存使用
def read(self, filename):
fc = read_100_mb_file(filename)
self.process(fc)
def process(self, content):
# do some processing of file content
是否有数据结构的重复?使用像self.fc这样的类属性是否更有效率?
什么时候应该使用垃圾回收?我知道有关gc模块,但是我是否在例如del fc
之后调用它?
更新
p.s. 100 Mb本身不是问题。但浮动转换,进一步处理添加显着更多的工作集和虚拟大小(我在Windows上)。
文件中的哪些内容?处理过程在做什么? – 2009-02-04 19:38:21
逗号分隔的时间序列,我减少到一些可以理解的总结变量 – SilentGhost 2009-02-04 19:43:35
你能更具体一点,也许发表一个小例子? – oefe 2009-02-04 21:45:54