擅长:python、mysql、java
<p><code>fileinput.input(...)</code>应该处理一堆文件,并且必须以相应的<code>fileinput.close()</code>结束。因此,您可以在一次调用中处理所有调用:</p>
<pre><code>def replaceAll(file,searchExp,replaceExp):
for line in fileinput.input(file, inplace=True):
if searchExp in line:
line = line.replace(searchExp,replaceExp)
dummy = sys.stdout.write(line) # to avoid a possible output of the size
fileinput.close() # to orderly close everythin
replaceAll(glob.glob('*.txt'), "$$\d","xxx")
</code></pre>
<p>或者在处理每个文件后始终关闭fileinput,但它会忽略fileinput的主要功能。你知道吗</p>