擅长:python、mysql、java
<p>问题是要将每一行读入Python列表中。文件有多大?这就是你在记忆中投入的。在</p>
<p>在同一步骤中进行阅读和分析,这样Python就可以进行垃圾收集了。在</p>
<p>当您开始分析部分时,您可能想查看<a href="http://pandas.pydata.org/" rel="nofollow">Pandas</a>,这是一个用于数据分析的库。在</p>
<p>这些建议你附加到列表中的其他答案在内存使用方面也会遇到同样的问题。诀窍是不要构建一个列表,而是逐步进行分析,这样就不需要在内存中存储10M行。在</p>
<p>如果您按照您在注释中所述的方式递增总计,并且绝对必须将其存储在内存中,则可以将值作为键存储在字典中,并增加计数。在</p>
<p>这仍然会导致内存占用,因此如果仍然崩溃,您可以选择:</p>
<ul>
<li><p>与另一个磁盘重复写入。然后你可以读取每个文件并获取总数,然后用一个变量计算出哪个文件的总数最高。这将是缓慢的,但将交换内存使用磁盘使用。</p></li>
<li><p>使用修改后的二叉树防止将任何位存储两次,并添加一个“times”变量,您可以将其递增到节点:</p>
<p>ab型
abc公司
abc公司
A{times:0}->;B{times:1}->;C{times:2}</p></li>
</ul>