擅长:python、mysql、java
<p>您没有理由将整个文件加载到内存中!你知道吗</p>
<pre><code>def start_end_points(file_name):
with open(file_name) as f:
found = False
for line in f:
if found or ("Hydrogen bonds:" in line):
found = True
print line
if "pi-pi stacking interactions:" in line:
break
start_end_points("foo.txt")
</code></pre>
<p>这样,内存中只保留一个缓冲区,每行处理一次,一旦到达<em>pi,就停止读取文件。。。</em>行。你知道吗</p>