擅长:python、mysql、java
<p>代码的逻辑是错误的:</p>
<ul>
<li><code>for fname in paths</code>应该是<code>for fname in files</code></li>
<li><code>for line in fname</code>不会逐行读取文件<code>fname</code>,因为<code>fname</code>是字符串,而不是文件对象</li>
</ul>
<p>权限错误是由于代码试图打开<code>directory</code>进行追加。</p>
<p>尝试:</p>
<pre><code>import os
from itertools import chain
paths = (r'C:/Users/Test_folder/Input/', r'C:/Users/Test_folder/Input_2/')
for path, dirs, files in chain.from_iterable(os.walk(path) for path in paths):
for fname in files:
with open(os.path.join(path, fname)) as fin, open(os.path.join('C:/Users/Test_folder/Test_output/', fname), 'a') as fout:
fout.write(fin.read())
</code></pre>