Python 3.x 如何防止python内存需求增加,克服内存不足错误?

Python 3.x 如何防止python内存需求增加,克服内存不足错误?,python-3.x,pandas,dataframe,memory,Python 3.x,Pandas,Dataframe,Memory,我有一个python代码,如下所示。随着for循环的进行,内存使用会增加,并且在某个点python停止执行后,会出现内存不足错误 通过做一些研究,我试图用close()和clf方法来关闭这些图形。把它们放在一起会降低内存积累率,但无法使我的代码完成。我认为垃圾收集毫无帮助 我无法理解内存累积的原因,因为我删除了每个for循环中的数据帧 我想如果我能找出如何完全清除内存,除了一些我不想清除的变量,这可能会有所帮助 在其他一些帖子中,有些人建议使用发电机,但我找不到一个带有小口逐步指南的 更新:Tp

我有一个python代码,如下所示。随着for循环的进行,内存使用会增加,并且在某个点python停止执行后,会出现内存不足错误

通过做一些研究,我试图用close()和clf方法来关闭这些图形。把它们放在一起会降低内存积累率,但无法使我的代码完成。我认为垃圾收集毫无帮助

我无法理解内存累积的原因,因为我删除了每个for循环中的数据帧

我想如果我能找出如何完全清除内存,除了一些我不想清除的变量,这可能会有所帮助

在其他一些帖子中,有些人建议使用发电机,但我找不到一个带有小口逐步指南的

更新:Tpe问题在于图形/绘图。当我从代码中删除绘图部分并将结果添加到文本文件时,问题就解决了。那么,如何将所有图形/绘图/等对象/变量/等从内存中完全删除

任何帮助克服这个问题的人都将不胜感激

f = open("logfile.csv","w")
for a in arange(6,15,1):
    for b in arange(0.5,4,0.4):
        for c in arange(0.5,4,0.4):
            for d in arange(0.5,4,0.4):
                fig=figure( figsize=( 25, 3*len(z) ) )
                # create a pandas dataframe s by making computations with the previous ones
                # than plot some of its colums to a figure file  
                del s,v
                fig.savefig('plota=%d;b=%.1f;c=%.1f;d=%.1f.png' %(a,b,c,d) ) 
                fig.clf()
                plt.cla()
                plt.close(fig)
                plt.close()
                plt.close('all')
                gc.collect()
你有没有检查过
len(z)
的(最大)值是多少?len(z)是11的常数