擅长:python、mysql、java
<p>发生这种情况是因为您多次打开文件进行写入。基本上,这使得程序在<code>while</code>循环的每次迭代中都覆盖文件。你知道吗</p>
<p>要最小限度地修改代码,请使用<code>'a'</code>标志而不是<code>'w'</code>标志打开文件。这将以<code>append</code>模式而不是<code>overwrite</code>模式打开文件。你知道吗</p>
<p>但是,这将使您的代码重复打开文件,这将导致文件速度减慢,因为磁盘I/O操作需要时间。相反,更好的方法是在<code>while</code>循环外部打开文件进行写入,然后在内部写入。在代码中:</p>
<pre><code>def printOutput(start, end, makeList):
if start == end == None:
return
else:
outputFile = open('out'+uniprotID+'.txt','w')#file for result output
while start <= end:
print start
print end
inRange = makeList[start]
start += 1
outputFile.write(inRange)
outputFile.close()
</code></pre>