我正在尝试使用Python 3.6将以“ file1.txt”编写的行复制到另一个文件“ file2.txt”,只是更改了名称。我用于执行此操作的代码是:
with open('path_to_file1', 'r') as fin:
with open('path_to_file2', 'w') as fout:
for line in fin:
fout.write(line.replace('ending_file1', 'ending_file2'))
但是我收到错误“ ValueError:对已关闭文件的I / O操作”。有谁知道为什么会这样?感谢您的帮助!
答案 0 :(得分:1)
我建议您先检查代码的缩进。然后确保为文件包括正确的扩展名(如有必要)。即使在for语句的缩进中,第一个“ with”之后的缩进似乎也没有。这可能会导致I / O值错误。重组代码后,对我来说效果很好:
with open('path_to_file1.txt', 'r') as fin:
with open('path_to_file2.txt', 'w') as fout:
for line in fin:
fout.write(line.replace('ending_file1', 'ending_file2'))